다크호스 프로그래머 자바 파일 흐름 읽 기와 쓰기

안 드 로 이 드 교육, 자바 교육, 당신 과 의 교 류 를 기대 합 니 다!
자바 파일 흐름 은 바이트 흐름 과 문자 흐름 으로 나 뉘 는데 파일 읽 기와 쓰 기 는 모두 문자 흐름 과 바이트 흐름 을 바탕 으로 한다
파일 읽 기 는 InputStream 과 Reader 를 포함 합 니 다.
출력 스 트림 과 Writer 를 포함 하 는 파일 쓰기
파일 형식 이 텍스트 파일 이면 Reader 와 Writer 를 사용 하고, 파일 형식 이 텍스트 가 아 닌 파일 이면 InputStream 과 OutputStream 을 사용 합 니 다.
파일 이 크 면 파일 읽 기와 쓰기 의 효율 을 높 여야 합 니 다. Buffered 를 접두사 로 하고 위의 네 가지 기본 클래스 를 접두사 로 하 는 클래스 를 사용 해 야 합 니 다. 예 를 들 어 Buffered InputStream, Buffered Reader, Buffered OutputStream, Buffered Writer 등 은 그들의 장식 류 라 고 부 릅 니 다. 다음은 두 가지 읽 기와 쓰기 의 예 입 니 다. 각각 텍스트 파일 읽 기와 쓰기, 비 텍스트 파일 읽 기와 쓰기 입 니 다.
import java.io.*;

public class InputStreamDemo {

    public InputStreamDemo() {
    }

	public void writeToTxt(String fileName) throws Exception
		{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    	BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName),"GBK"));
		String line=null;
    	while((line=br.readLine())!=null)
    	{
    		if(new String(line).equals("over"))
    			break;
    		bw.write(line);
    		bw.newLine();
    		bw.flush();
    	}
	}
	public void copyFile(String fileName,String fileName2){
		BufferedInputStream bis=null;
		BufferedOutputStream bos = null;
	try{
		 bis = new BufferedInputStream(new FileInputStream(fileName));
		 bos = new BufferedOutputStream(new FileOutputStream(fileName2));
		byte[] by = new byte[1024];
		int len=0;
		while((len=bis.read(by))!=-1)
		{
			bos.write(by,0,len);
		}
	}catch(IOException e)
	{
		new RuntimeException("      ");
	}
		finally{
			try{
					bis.close();
					bos.close();
			}catch(Exception e)
			{}
		}

	}

    public static void main(String [] args) throws Exception
    {
		InputStreamDemo id = new InputStreamDemo();
		id.copyFile("d:\\111.jpg","d:\\222.jpg");

    }
}

안 드 로 이 드 교육, 자바 교육, 당신 과 의 교 류 를 기대 합 니 다!
자세히 보기:http://edu.csdn.net/heima

좋은 웹페이지 즐겨찾기