日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用IOUtils和FileUtils

發(fā)布時(shí)間:2024/7/19 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用IOUtils和FileUtils 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文本輸出應(yīng)該比較常用,以前都是通過反復(fù)的創(chuàng)建InputStream, InputReader, OutputStream, OutputWriter等去輸入輸出文本,比較麻煩。

Apache提供了一個(gè)commons-io.jar包,里面有很多IO相關(guān)的工具,比如輸入輸出文本等,著實(shí)方便了很多。

比如讀取一個(gè)文件:

?

Java代碼??
  • //?by?FileUtils??
  • List<String>?lines?=?FileUtils.readLines(file,?"UTF-8");??
  • ??
  • //?by?IOUtils??
  • List<String>?lines?=?IOUtils.readLines(new?FileInputStream(file),?"UTF-8");??
  • ?

    ?

    寫入文件:

    ?

    Java代碼??
  • //?by?FileUtils??
  • FileUtils.writeLines(file,?"UTF-8",?lines);??
  • ??
  • //?by?IOUtils??
  • IOUtils.writeLines(lines,?null,?new?FileOutputStream(file));??
  • ?

    ?

    FileUtils/IOUtils還有其他很多方法用于讀取寫入文件,或者讀取輸出到InputStream/OutputStream等,這里就不再一一列舉,可以參考查閱對(duì)應(yīng)的Java Doc

    FileUtils:?http://commons.apache.org/io/api-2.0/org/apache/commons/io/FileUtils.html

    IOUtils:?http://commons.apache.org/io/api-2.0/org/apache/commons/io/IOUtils.html

    ?

    特殊需求:FileUtils/IOUtils中寫入文本的方法看上去都是只能一次性的批量寫入多行,并覆蓋原有的文本,如果我們需要單行寫入怎么辦呢,其實(shí)在IOUtils中是提供了這樣的方法的,只不過比較隱晦而已:

    Java代碼??
  • try?{??
  • ????OutputStream?os?=?new?FileOutputStream(file,?true);??
  • ????IOUtils.writeLines(lines,?null,?os,?"UTF-8");??
  • }?catch?(IOException?e)?{??
  • ????e.printStackTrace();??
  • }??
  • 其實(shí)就是在初始化FileOutputStream的時(shí)候 ,第二個(gè)參數(shù)append設(shè)為true就可以了。

    轉(zhuǎn)載于:https://www.cnblogs.com/chenying99/archive/2012/08/17/2644875.html

    總結(jié)

    以上是生活随笔為你收集整理的使用IOUtils和FileUtils的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。