JAVA學習:IO輸入輸出

JAVA IO輸出學習:

第一種,字節流,指定字節數:

import java.io.*;
class IO_study0{
	public static void main(String args[]){
	FileInputStream fis=null;
	FileOutputStream fos=null;
	try{
	fis=new FileInputStream("from.txt");
    fos=new FileOutputStream("to.txt");
    byte[] buffer=new byte[100];
	//fis.read(buffer,0,buffer.length);//註釋掉的這兩行於下面那兩行運行結果一致
	//fos.write(buffer,0,buffer.length);//
    int temp=fis.read(buffer,0,buffer.length);
	fos.write(buffer,0,temp);	

	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fis.close();
		fos.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}

第二種,字節流,整個文件內容輸入輸出:

import java.io.*;
class IO_study1{
	public static void main(String args[]){
	FileInputStream fis=null;
	FileOutputStream fos=null;
	try{
	fis=new FileInputStream("from.txt");
    fos=new FileOutputStream("to.txt");
    byte[] buffer=new byte[1024];
    while(true){//讀取整個文件的內容,並將內容全部寫入新的文件中
    int temp=fis.read(buffer,0,buffer.length);
	if(temp==-1)
		break;
	fos.write(buffer,0,temp);
    }

	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fis.close();
		fos.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}

第三種,字符流,整個文件輸入輸出:

import java.io.*;
class IO_study2{
	public static void main(String args[]){
	FileReader fr=null;
	FileWriter fw=null;
	try{
	fr=new FileReader("from.txt");
    fw=new FileWriter("to.txt");
    char[] buffer=new char[1024];
    while(true){
    int temp=fr.read(buffer,0,buffer.length);
	if(temp==-1)
		break;
	fw.write(buffer,0,temp);
    }

	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fr.close();
		fw.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}



補充點一:

import java.io.*;
class IO_study2{
	public static void main(String args[]){
	FileReader fr=null;
	FileWriter fw=null;
	try{
	fr=new FileReader("from.txt");
    fw=new FileWriter("to.txt");
    char[] buffer=new char[1024];
    while(true){
	int temp=fr.read(buffer,5,buffer.length-5);//注意如果這裏從第5個開始讀,那麼相應的讀取長度也要改爲(讀取長度-5),不然會引發數組越界異常
	if(temp==-1)
		break;
	fw.write(buffer,0,temp);
    }

	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fr.close();
		fw.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}


補充點二:

import java.io.*;
class IO_study2{
	public static void main(String args[]){
	FileReader fr=null;
	BufferedReader br=null;
	try{
	fr=new FileReader("from.txt");
	br=new BufferedReader(fr);
    char[] buffer=new char[1024];
	String s=null;
    while(true){
	s=br.readLine();//按行讀取
	if(s==null)
		break;
	System.out.println(s);//按行打印
    }	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fr.close();
		fw.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}

補充點三:

import java.io.*;
class IO_study2{
	public static void main(String args[]){
	FileReader fr=null;
	FileWriter fw=null;
	try{
	fr=new FileReader("from.txt");
    fw=new FileWriter("to.txt");
    char[] buffer=new char[1024];
	
    while(true){
	int temp=fr.read(buffer,5,buffer.length-5);
	if(temp==-1)
		break;
	String s=new String(buffer);
		s.trim();//使用trim()方法去除空格
		System.out.println(s);
	fw.write(buffer,0,temp);
    }

	
	}
	catch(Exception e){
		System.out.println();
	}
	finally{
		try{
		fr.close();
		fw.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
		
	}
}





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章