天天看點

IO流之字元流讀寫檔案

public void copyFile() {

		FileReader fileReader = null;
		FileWriter fileWriter = null;

		try {
			fileReader = new FileReader(new File("D:\\bb.txt"));
			fileWriter = new FileWriter(new File("D:\\jj.txt"));

			char[] chars = new char[1024];

			int len;

			while ((len = fileReader.read(chars)) != -1) {
				fileWriter.write(chars, 0, len);
			}
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (null != fileWriter) {
					fileWriter.close();
				}
				if (null != fileReader) {
					fileReader.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
	
	public void copyFileByBuffered() {
		
		BufferedReader bufferedReader = null;
		BufferedWriter bufferedWriter = null;
		
		try {
			bufferedReader = new BufferedReader(new FileReader(new File("D:\\bb.txt")));
			bufferedWriter = new BufferedWriter(new FileWriter(new File("D:\\kk.txt")));
			
			String line = bufferedReader.readLine();
			
			while (line != null) {
				bufferedWriter.write(line);
				bufferedWriter.newLine();
				line = bufferedReader.readLine();
			}
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (null != bufferedWriter) {
					bufferedWriter.close();
				} 
				if (null != bufferedReader) {
					bufferedReader.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}