package IO_02;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
/*
* 面试题:close()和flush()的区别?
* A:close()关闭流对象,但是先刷新一次缓冲区。关闭之后,流对象不可以继续再使用了。
* B:flush()仅仅刷新缓冲区,刷新之后,流对象还可以继续使用。
*/
public class ReaderWriterDemo {
public static void main(String[] args) throws IOException {
OutputStreamWriter fos = new OutputStreamWriter(new FileOutputStream("fos.txt"),"UTF-8");
fos.write("我爱Java!!!");
fos.flush();
fos.close();
//My eclipse environment is "GBK"
InputStreamReader isr = new InputStreamReader(new FileInputStream("fos.txt"));//鎴戠埍Java锛侊紒锛?
// InputStreamReader isr = new InputStreamReader(new FileInputStream("fos.txt"),"UTF-8");//我爱Java!!!
// InputStreamReader isr = new InputStreamReader(new FileInputStream("fos.txt"),"GBK");//鎴戠埍Java锛侊紒锛?
char[] arr = new char[1024];
int len = 0;
while((len = isr.read(arr)) != -1){
System.out.println(new String(arr,0,len));
}
isr.close();
}
}
package IO_02;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
//把一个文件里的数据读到另一个文件里
public class FileReaderWriterDemo {
public static void main(String[] args) throws IOException {
FileReader fr = new FileReader("a.txt");
FileWriter fw = new FileWriter("b.txt");
char[] arr = new char[1024];
int len = 0;
while((len = fr.read(arr)) != -1){
fw.write(arr,0,len);
fw.flush();
}
fw.close();
fr.close();
}
}
package IO_02;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class BufferReaderWriterDemo {
public static void main(String[] args) throws IOException {
bufferWriter();
bufferReader();
}
public static void bufferWriter() throws IOException{
BufferedWriter bw = new BufferedWriter(new FileWriter("bw2.txt"));
for(int i=0;i<10;i++){
bw.write("hello:"+i);
// bw.write("\r\n");
bw.newLine();
bw.flush();
}
bw.close();
}
public static void bufferReader() throws IOException{
BufferedReader br = new BufferedReader(new FileReader("bw2.txt"));
String line = null;
while((line = br.readLine()) != null){
System.out.println(line);
}
br.close();
}
}
package IO_02;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class BufferedReaderWriterDemo02 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader("a.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("c.txt"));
//第一种方式
// String line = null;
// while((line = br.readLine()) != null){
// bw.write(line);
// bw.newLine();
// bw.flush();
// }
//第二种方式
char[] buf = new char[1024];
int len = 0;
while((len = br.read(buf)) != -1){
bw.write(buf, 0, len);
bw.flush();
}
br.close();
bw.close();
}
}