java--IO--FileInputStream和FileOutputStream
阿新 • • 發佈:2021-06-18
- FileInputStream的:檔案位元組輸入流(InputStream的子類)
- FileInputStream的方法:
-
FileInputStream的例項:
-
package com.model.io.inputstream.fileinputstream; import org.junit.Test; import java.beans.Transient; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException;
- FileInputStream的方法:
-
FileOutputStream:檔案位元組輸出流(是OutputStream的子類)
-
常見的方法:
- FileOutputStream的例項:
-
package com.model.io.outputstream.fileoutputstream; import org.junit.Test; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** * @Description:測試類 * @Author: 張紫韓 * @Crete 2021/6/18 13:55 */ public class FileOutPutStreamDemo01 { /** * 演示FileOutputStream,將資料寫入到磁碟中的某個檔案 * 如果磁碟中的這個檔案不存在,則建立檔案 * */ @Test public void write() throws IOException { //1.宣告寫入檔案的路徑 String filePath="D:\\qq\\IDEA\\IdeaProjects\\java_mianshi_test\\mianshi_io\\src\\main\\resources\\OutputStream\\FileOutputStream.txt"; //2.宣告寫入位元組物件 FileOutputStream fileOutputStream=null; try { //3.將檔案的路徑傳入給寫入位元組物件 // fileOutputStream = new FileOutputStream(filePath); //第一種是替換的 fileOutputStream=new FileOutputStream(filePath,true); //追加的方式新增到檔案中 //4.寫入位元組物件呼叫write,向檔案中寫入資料 // fileOutputStream.write('a'); //第一種只寫入一個字元 String str="hello,word!"; // fileOutputStream.write(str.getBytes()); //第二中寫入的是一個位元組陣列,將字串轉為位元組陣列寫入到檔案中 fileOutputStream.write(str.getBytes(), 0, str.length()); //寫入的位元組陣列指定起始位置和長度 } catch (FileNotFoundException e) { e.printStackTrace(); }finally { //5.關閉資源 fileOutputStream.close(); } } }
-
-
-
完成檔案的拷貝
-
package com.model.io; import java.io.*; /** * @Description:測試類 * @Author: 張紫韓 * @Crete 2021/6/18 14:50 */ public class CopyDemo01 { /** * 完成檔案的拷貝,將D:\qq\IDEA\IdeaProjects\java_mianshi_test\mianshi_io\src\main\resources\a.jpg * 檔案拷貝到D:\qq\IDEA\IdeaProjects\java_mianshi_test\mianshi_io\src\main\resources\File 目錄下 * * */ public static void main(String[] args) throws IOException { File fileFrom = new File("D:\\qq\\IDEA\\IdeaProjects\\java_mianshi_test\\mianshi_io\\src\\main\\resources\\a.jpg"); String fileTo="D:\\qq\\IDEA\\IdeaProjects\\java_mianshi_test\\mianshi_io\\src\\main\\resources\\File\\"+fileFrom.getName(); //1.先讀取到檔案 FileInputStream fileInputStream=null; byte[] buff = new byte[1024]; int readCount=0; FileOutputStream fileOutputStream=null; try { fileInputStream=new FileInputStream(fileFrom); fileOutputStream=new FileOutputStream(fileTo,true); while((readCount=fileInputStream.read(buff))!=-1){ //2.再將檔案寫入到指定的目錄下 fileOutputStream.write(buff,0,readCount); } System.out.println(fileFrom.getName()+"拷貝成功!"); } catch (FileNotFoundException e) { e.printStackTrace(); }finally { if (fileOutputStream!=null) { fileOutputStream.close(); } if (fileOutputStream!=null) { fileInputStream.close(); } } } }
-