日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

使用FileUtils簡化你的文件操作

 觀審美2 2016-10-12

前言:

    在工作當(dāng)中我們往往遇到很多文件的操作,我們也習(xí)慣寫一些自己定義的工具類來簡化文件操作,其實(shí)apache的commons的FileUtils類就是這樣一個(gè)工具類,使用它能大大的簡化我們對文件的操作。

 

準(zhǔn)備工作:

    1.下載jar     地址:http://commons./proper/commons-io/download_io.cgi

    2.把commons-io-2.4.jar 這個(gè)文件導(dǎo)入到你的項(xiàng)目中

 

說明:

    1.由于是一個(gè)工具類使用都非常的簡單 所以本文只是將其分類,展示它能夠提供給我們什么。

    2.習(xí)慣看api的可以直接看官方的api   傳送門

    3.可以看一看官方的指引  指引傳送門

    4.FileUtils只是commons-io的其中一個(gè)工具類

 

分類說明演示:

    1.寫 文件/文件夾

/* 寫文件
* 1.這里只列出3種方式全參數(shù)形式,api提供部分參數(shù)的方法重載
* 2.最后一個(gè)布爾參數(shù)都是是否是追加模式
* 3.如果目標(biāo)文件不存在,F(xiàn)ileUtils會自動創(chuàng)建
* */
//static void:write(File file, CharSequence data, String encoding, boolean append)
FileUtils.write(new File("D:/a/b/cxyapi.txt"), "程序換api","UTF-8",true);

//static void:writeLines(File file, Collection<?> lines, boolean append)
List<String> lines=new ArrayList<String>();
lines.add("歡迎訪問:");lines.add("www.");
FileUtils.writeLines(new File("D:/a/b/cxyapi.txt"),lines,true);

//static void:writeStringToFile(File file, String data, String encoding, boolean append)
FileUtils.writeStringToFile(new File("D:/a/b/cxyapi.txt"), "作者:cxy", "UTF-8",true);

2.讀 文件/文件夾

//讀文件
//static String:readFileToString(File file, String encoding)
System.out.println(FileUtils.readFileToString(new File("D:/a/b/cxyapi.txt"), "UTF-8"));

//static List<String>:readLines(File file, String encoding)
System.out.println(FileUtils.readLines(new File("D:/a/b/cxyapi.txt"), "UTF-8")); //返回一個(gè)list

 3.刪除 文件/文件夾

//刪除目錄
//static void:deleteDirectory(File directory)
FileUtils.deleteDirectory(new File("D:/not/cxyapi"));

//static boolean:deleteQuietly(File file)
FileUtils.deleteQuietly(new File("D:/not/cxyapi")); //文件夾不是空任然可以被刪除,永遠(yuǎn)不會拋出異常

  4.移動 文件/文件夾

//移動文件 或 文件夾
//static void:moveDirectory(File srcDir, File destDir)
FileUtils.moveDirectory(new File("D:/cxyapi1"), new File("D:/cxyapi2")); //注意這里 第二個(gè)參數(shù)文件不存在會引發(fā)異常
//static void:moveDirectoryToDirectory(File src, File destDir, boolean createDestDir)
FileUtils.moveDirectoryToDirectory(new File("D:/cxyapi2"), new File("D:/cxyapi3"), true);
/* 上面兩個(gè)方法的不同是:
* moveDirectory:D:/cxyapi2里的內(nèi)容是D:/cxyapi1的內(nèi)容。
* moveDirectoryToDirectory:D:/cxyapi2文件夾移動到到D:/cxyapi3里
*
* 下面的3個(gè)都比較簡單沒提供示例,只提供了api
* 其中moveToDirectory和其他的區(qū)別是 它能自動識別操作文件還是文件夾
*/
//static void:moveFileToDirectory(srcFile, destDir, createDestDir)
//static void:moveFile(File srcFile, File destFile)
//static void:moveToDirectory(File src, File destDir, boolean createDestDir)

  5.copy

//結(jié)果是cxyapi和cxyapi1在同一目錄
FileUtils.copyDirectory(new File("D:/cxyapi"), new File("D:/cxyapi1"));
//結(jié)果是將cxyapi拷貝到cxyapi2下
FileUtils.copyDirectoryToDirectory(new File("D:/cxyapi"), new File("D:/cxyapi2"));

//拷貝文件
FileUtils.copyFile(new File("d:/cxyapi.xml"), new File("d:/cxyapi.xml.bak"));
//拷貝文件到目錄中
FileUtils.copyFileToDirectory(new File("d:/cxyapi.xml"), new File("d:/cxyapi"));
//拷貝url到文件
FileUtils.copyURLToFile(new URL("http://www./rss/cxyapi.xml"), new File("d:/cxyapi.xml"));

  6.其他

//判斷是否包含文件或者文件夾
boolean b=FileUtils.directoryContains(new File("D:/cxyapi"), new File("D:/cxyapi/cxyapi.txt"));
System.out.println(b);

//獲得臨時(shí)目錄 和 用戶目錄
System.out.println(FileUtils.getTempDirectoryPath());
System.out.println(FileUtils.getUserDirectoryPath());

//打開流,如果不存在創(chuàng)建文件及其目錄結(jié)構(gòu)
//第二個(gè)參數(shù)表示 文件流是否是追加方式
FileOutputStream fos=FileUtils.openOutputStream(new File("D:/cxyapi/cxyapi.txt"),true);
fos.write(new String("歡迎訪問:www.\r\n").getBytes());
fos.close();

//文件 或 文件夾大小
System.out.println(FileUtils.sizeOf(new File("D:/cxyapi")));
System.out.println(FileUtils.sizeOfDirectory(new File("D:/cxyapi")));


摘自:http://snkcxy./blog/1845862

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多