//寫文件
File file=new File("demo1.txt");//抽象一個1.txt的文件,處理文件名或者路徑
//構造兩個FileOutPutStream的實例對象,先定義一個File類文件的做法比較規范,通用
FileOutputStream fos1=new FileOutputStream(file,false);//true表示如果文件已經存在,沒執行程序一次便往文件追加一次內容,否則會每一次的執行結果會覆蓋文件上一次執行結果
BufferedOutputStream bos=new BufferedOutputStream(fos1);//把fos1封裝成具有緩沖功能的文件輸出流
FileOutputStream fos2=new FileOutputStream("demo2.txt");//用一個String構造一個FileOutputStream對象,String為文件名,這種構造方法也可以有兩個參數,同上
DataOutputStream dos=new DataOutputStream(fos2);//DataOutputStream提供了寫入任意對象的能力
String s1="How are you?";
String s2="Fine.Thanks!";
dos.writeBytes(s1+" "+s2);
fos1.write(s1.getBytes());//把字符串s1以字節流形式寫入1.txt文件中
// fos2.write(s2.getBytes());//把字符串s2以字節形式流寫入2.txt文件中
fos1.write(s2.getBytes());
//讀出文件內容
FileInputStream fis=new FileInputStream(file);
byte[] b=new byte[fis.available()];//創建一個字節數組,數組長度與file中獲得的字節數相等
while(fis.read(b)!=-1){
System.out.println(new String(b));//打印出從file文件讀取的內容
}
public static void main(String[] args) { File file = new File("e:\\12332.txt"); try { FileOutputStream fos = new FileOutputStream(file); BufferedOutputStream bos = new BufferedOutputStream(fos); DataOutputStream dos = new DataOutputStream(bos); FileInputStream fis = new FileInputStream(new File("e:\\12223.txt")); byte[] b = new byte[1024]; int c = 0; while((c=fis.read(b))!=-1){ dos.write(b, 0, c);; } fis.close(); dos.close(); bos.close(); fos.close(); System.out.println("運行到這"); } catch (Exception e) { e.printStackTrace(); } }
FileInputStream以字節流讀取文件
FileOutputStream以字節流讀取文件