(JAVA)IO1
IO流四個(gè)抽象及類
1.字節(jié)輸出流,寫入任意文件OutputStreamwrite 字節(jié)數(shù)組 字節(jié)數(shù)組的一部分 單個(gè)字節(jié)close 釋放資源flush 刷新資源,強(qiáng)制刷新資源
2.字節(jié)輸入流,讀取任意文件InputStreamread 字節(jié)數(shù)組 字節(jié)數(shù)組的一部分 單個(gè)字節(jié)close 關(guān)閉資源
3.字符輸出流 讀取文本文件Writewrite 字符輸出 字節(jié)數(shù)組的一部分 單個(gè)字符 寫字符串flush 刷新內(nèi)存,寫完字符輸出流必須強(qiáng)制刷新close 關(guān)閉資源
4.字符輸入流 讀取文本文件Readerread 字符數(shù)組 字符數(shù)組的一部分 單個(gè)字符close 關(guān)閉資源
package IODemo;import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;/*** @author Alina* @date 2021年10月14日 9:58 下午*/
public class FileOutputStreamDemo {public static void main(String[] args) {/**** IO文件操作異常梳理* 文件是否被讀取成功,都必須釋放資源* close()寫下finally下* 因?yàn)樽饔糜虻膯栴},finally無法識(shí)別到未命名的fos 所以必須將fos變成局部變量,在try外聲明**/FileOutputStream fos = null;FileOutputStream fos2 = null;//開幾個(gè)流對(duì)象就需要關(guān)閉多少流對(duì)象,在finally中添加try catchtry {fos = new FileOutputStream("src/IODemo/test.txt",true);fos2 = new FileOutputStream("src/IODemo/test.txt",true);fos.write("我愛你".getBytes(StandardCharsets.UTF_8));fos2.write("我愛你".getBytes(StandardCharsets.UTF_8));}catch (IOException e ){e.printStackTrace();//此處如果發(fā)生異常,無法處理,則讓程序停止運(yùn)行throw new RuntimeException("停止運(yùn)行");}finally {try{if(fos!=null){fos.close();}}catch (IOException e ) {e.printStackTrace();throw new RuntimeException("關(guān)閉異常");}finally {try {if (fos2 != null) {fos2.close();}} catch (IOException o) {o.printStackTrace();throw new RuntimeException("關(guān)閉異常");}}}}/** 字節(jié)輸出流寫入文件實(shí)現(xiàn)步驟1.創(chuàng)建子類對(duì)象2.調(diào)用子類對(duì)象寫入方法。write3.關(guān)閉資源*/public static void method_write() throws IOException {FileOutputStream fos = new FileOutputStream("/Users/yuzhang/Desktop/test.txt");//寫入單個(gè)字節(jié)fos.write("abc".getBytes(StandardCharsets.UTF_8));//寫入字節(jié)數(shù)組byte[] bytes= {100,101,102,103};fos.write(bytes);fos.write("你好".getBytes(StandardCharsets.UTF_8));fos.close();}/**** @author Alina* @date 2021/10/14 10:22 下午* 1.打開文本文件后,在文本文件中追加內(nèi)容* 2.使用構(gòu)造方法 寫入?yún)?shù)true 表示追加* 2.如果想要在本類目錄下創(chuàng)建文件,使用相對(duì)地址*/public static void method_write1() throws IOException{FileOutputStream fos = new FileOutputStream("src/IODemo/test.txt",true);fos.write("中國(guó)".getBytes(StandardCharsets.UTF_8));fos.close();}}
總結(jié)
- 上一篇: 谷歌翻译失败解决方案
- 下一篇: 【企业架构】什么是第一?架构还是流程?