日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java中創建、寫入文件的5種方式

瀏覽:61日期:2022-08-26 08:05:11

在java中有很多的方法可以創建文件寫文件,你是否真的認真的總結過?下面筆者就幫大家總結一下java中創建文件的五種方法。

Files.newBufferedWriter(Java 8) Files.write(Java 7 推薦) PrintWriter File.createNewFile FileOutputStream.write(byte[] b) 管道流

實際上不只這5種,通過管道流的排列組合,其實有更多種,但是筆者總結的這五種可以說是最常用及最佳實踐,

前提小知識

以前我在寫技術文章涉及到“流關閉”、“連接關閉”的時候,經常有人留言:“還寫技術文章,寫個流都不知道close()”,這種留言我遇到過無數回!在本文中大量的使用到了try-with-resources語法,這個語法真的是很久的了,但是的確還有小伙伴不知道(知道的小伙伴就略過吧)。我還是說一下,下文中的管道流不是我沒close,是自動關閉close的。

try(管道流、連接等實現了Closeable接口的類){ //這里使用類對象操作}//用try()包含起來,就不用在finally里面自己手動的去 Object.close()了,會自動的關閉

1. Java 8 Files.newBufferedWriter

java8 提供的newBufferedWriter可以創建文件,并向文件內寫入數據。可以通過追加寫模式,向文件內追加內容。

@Testvoid testCreateFile1() throws IOException { String fileName = 'D:datatestnewFile.txt'; Path path = Paths.get(fileName); // 使用newBufferedWriter創建文件并寫文件 // 這里使用了try-with-resources方法來關閉流,不用手動關閉 try (BufferedWriter writer = Files.newBufferedWriter(path, StandardCharsets.UTF_8)) { writer.write('Hello World -創建文件!!'); } //追加寫模式 try (BufferedWriter writer =Files.newBufferedWriter(path, StandardCharsets.UTF_8, StandardOpenOption.APPEND)){ writer.write('Hello World -字母哥!!'); }}

2. Java 7 Files.write

下面的這種方式Files.write,是筆者推薦的方式,語法簡單,而且底層是使用Java NIO實現的。同樣提供追加寫模式向已經存在的文件種追加數據。這種方式是實現文本文件簡單讀寫最方便快捷的方式。

@Testvoid testCreateFile2() throws IOException { String fileName = 'D:datatestnewFile2.txt'; // 從JDK1.7開始提供的方法 // 使用Files.write創建一個文件并寫入 Files.write(Paths.get(fileName),'Hello World -創建文件!!'.getBytes(StandardCharsets.UTF_8)); // 追加寫模式 Files.write( Paths.get(fileName), 'Hello World -字母哥!!'.getBytes(StandardCharsets.UTF_8), StandardOpenOption.APPEND);}

3. PrintWriter

PrintWriter是一個比較古老的文件創建及寫入方式,從JDK1.5就已經存在了,比較有特點的是:PrintWriter的println方法,可以實現一行一行的寫文件。

@Testvoid testCreateFile3() throws IOException { String fileName = 'D:datatestnewFile3.txt'; // JSD 1.5開始就已經存在的方法 try (PrintWriter writer = new PrintWriter(fileName, 'UTF-8')) { writer.println('Hello World -創建文件!!'); writer.println('Hello World -字母哥!!'); } // Java 10進行了改進,支持使用StandardCharsets指定字符集 /*try (PrintWriter writer = new PrintWriter(fileName, StandardCharsets.UTF_8)) { writer.println('first line!'); writer.println('second line!'); } */}

4. File.createNewFile()

createNewFile()方法的功能相對就比較純粹,只是創建文件不做文件寫入操作。 返回true表示文件成功,返回 false表示文件已經存在.可以配合FileWriter 來完成文件的寫操作。

@Testvoid testCreateFile4() throws IOException { String fileName = 'D:datatestnewFile4.txt'; File file = new File(fileName); // 返回true表示文件成功 // false 表示文件已經存在 if (file.createNewFile()) { System.out.println('創建文件成功!'); } else { System.out.println('文件已經存在不需要重復創建'); } // 使用FileWriter寫文件 try (FileWriter writer = new FileWriter(file)) { writer.write('Hello World -創建文件!!'); }}

5.最原始的管道流方法

最原始的方式就是使用管道流嵌套的方法,但是筆者覺得這種方法歷久彌新,使用起來非常靈活。你想去加上Buffer緩沖,你就嵌套一個BufferedWriter,你想去向文件中寫java對象你就嵌套一個ObjectOutputStream。但歸根結底要用到FileOutputStream。

@Testvoid testCreateFile5() throws IOException { String fileName = 'D:datatestnewFile5.txt'; try(FileOutputStream fos = new FileOutputStream(fileName); OutputStreamWriter osw = new OutputStreamWriter(fos); BufferedWriter bw = new BufferedWriter(osw);){ bw.write('Hello World -創建文件!!'); bw.flush(); }}

以上就是java中創建、寫入文件的5種方式的詳細內容,更多關于Java 創建、寫入文件的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
视频一区欧美日韩| 欧美日韩激情| 久久国产影院| 另类综合日韩欧美亚洲| 亚洲美女91| 婷婷综合亚洲| 国产不卡人人| 欧美精品成人| 久久国际精品| 四虎在线精品| 久久久久国产| 四虎成人av| 国产精品毛片久久久| 亚洲免费毛片| 蜜桃av一区二区在线观看| 精品欧美一区二区三区在线观看| 国产一区福利| 91成人超碰| 美女网站一区| 久久青草久久| 成人精品天堂一区二区三区| 国产在线观看www| 成人国产精品久久| 日韩精品欧美成人高清一区二区| 福利一区二区三区视频在线观看| 国产精品115| 欧美一区91| 视频一区二区中文字幕| 影院欧美亚洲| 欧美高清一区| 日韩一级不卡| 视频在线在亚洲| 亚洲一本视频| 合欧美一区二区三区| 久久国产亚洲精品| 国产精品99一区二区| 欧美成人综合| 欧美在线资源| 久久精品av| 亚洲一区日韩| 蜜桃av一区二区三区电影| 蜜桃久久久久久| 日本亚洲欧洲无免费码在线| 日韩久久一区| 国产精品黄网站| 韩国女主播一区二区三区| 91欧美在线| 国产精品一区二区美女视频免费看 | 国产极品模特精品一二| 美女高潮久久久| 日韩国产欧美一区二区| 美女福利一区二区三区| 久久天堂av| 黑丝美女一区二区| 免播放器亚洲一区| 日本午夜免费一区二区| 国产精品入口久久| 国内在线观看一区二区三区| 久久亚洲人体| 国产一区精品福利| 久久久久久美女精品| 91精品国产福利在线观看麻豆| 欧美网站在线| 日本视频中文字幕一区二区三区| 免费视频一区二区三区在线观看| 国内不卡的一区二区三区中文字幕| 蜜臀国产一区| 香蕉成人久久| 国产欧美综合一区二区三区| 精品国产精品国产偷麻豆| 91精品国产91久久久久久黑人| 亚洲一区二区动漫| 国产精品久久久久久久免费软件| 中文字幕色婷婷在线视频| 国产一区导航| 欧美日韩免费观看视频| 国产乱人伦丫前精品视频| 怡红院精品视频在线观看极品| 精品视频高潮| 日本免费新一区视频| 1024精品久久久久久久久| 福利一区和二区| 久久精品超碰| 亚洲一区导航| 亚洲激情不卡| 日韩毛片在线| 国产欧美日韩在线一区二区| 激情综合网五月| 日产精品一区二区| 日韩一区二区三区免费视频| 香蕉久久99| 91亚洲国产| 久久中文在线| 久久国产麻豆精品| 免费在线观看精品| 欧美在线资源| 国产91精品对白在线播放| 精品三级av| 国产精品亚洲二区| 欧美日韩va| 日本伊人午夜精品| 日韩专区欧美专区| 午夜欧美在线| 999国产精品| 六月丁香综合在线视频| 日韩精品第二页| 亚洲人亚洲人色久| 日韩中文字幕1| 午夜日本精品| 日本免费一区二区视频| 欧美久久一区二区三区| 午夜影院一区| 欧美激情五月| 7777精品| 日本视频一区二区| 91福利精品在线观看| 亚洲欧洲日韩| 久久亚洲不卡| 99在线精品免费视频九九视| 国产精品久久久亚洲一区| 青草国产精品久久久久久| 亚洲精品大片| 日韩在线电影| 日韩精品午夜视频| 亚洲一二av| 亚洲精一区二区三区| 亚洲精品极品| 欧美日韩一区二区三区四区在线观看 | 国产乱子精品一区二区在线观看| 婷婷精品在线观看| 日韩一二三区在线观看| 日韩在线麻豆| 日韩精品电影一区亚洲| 欧美日韩中出| 久久精品系列| 欧美成a人免费观看久久| 欧美肉体xxxx裸体137大胆| 亚洲国产不卡| 免费人成网站在线观看欧美高清| 免费成人在线影院| 亚洲精品乱码日韩| 国产欧美一区二区精品久久久| 国产精品亚洲二区| 国产中文欧美日韩在线| 国产精品精品| 欧美日韩国产在线观看网站| 视频一区中文字幕国产| 日韩精品亚洲aⅴ在线影院| 国产欧美在线观看免费| 国产一区精品福利| 免费国产自久久久久三四区久久| 视频一区中文字幕国产| 欧美日韩一区二区国产| 国产一区国产二区国产三区| 香蕉精品久久| 日本久久二区| 国产一区不卡| 欧美国产91| 97久久亚洲| 国产成人精品一区二区免费看京 | 亚洲不卡av不卡一区二区| 黄色亚洲在线| 日本视频一区二区| 久久久久九九精品影院| 亚洲91精品| 日本综合精品一区| 国产一区二区三区亚洲| 欧美在线影院| 国产乱码精品一区二区三区亚洲人 | 国产亚洲电影| 福利一区二区免费视频| 亚洲天堂黄色| 日本综合精品一区| av在线资源| 伊人精品久久| 福利一区二区免费视频| 久久电影一区| 99精品一区| 久久不见久久见中文字幕免费| 亚洲久久视频| 综合精品一区| 日本午夜大片a在线观看| 亚洲一区观看| 国产欧美三级| 欧美日韩国产免费观看| 国产精品嫩模av在线| 国内精品福利| 久久的色偷偷| 玖玖精品视频| 日韩啪啪电影网| 欧美亚洲一区二区三区| 少妇久久久久| 国产三级一区| 日韩午夜电影| 成人日韩av| 亚洲精品第一| 欧美1区2区3区| 男女精品网站| 日韩伦理福利| 四虎成人精品一区二区免费网站|