import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* InputStreamReader
* 字节流转为字符流。
* @author jiaxutianhuo
*
*/
public class BZifu {
public static void main(String[] args) {
// TODO Auto-generated method stub
FileInputStream fis = null;
InputStreamReader isr = null;
BufferedReader br = null;
try {
// fis=new FileInputStream("F:/IOtest/ddt3.txt");
// isr=new InputStreamReader(fis);
// br=new BufferedReader(isr);
// 字节流转成字符流,可以将上面的三个步骤合成一个步骤。
br = new BufferedReader(new InputStreamReader(new FileInputStream("F:/IOtest/ddt3.txt")));
StringBuffer sb = new StringBuffer();
String str = null;
while ((str = br.readLine()) != null) {
sb.append(str + "\r\n");
}
System.out.println(sb.toString());
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (br == null){
br.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.io.*;
/**
* 字符流读取和写入
*
* @author jiaxutianhuo
*
*/
public class AZifu {
public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("F:/IOtest/read1.txt");
FileReader fr = null;
BufferedReader br=null;
try {
fr = new FileReader(file);
br=new BufferedReader(fr);
String str=null;
//用BufferedReader可以逐行读取,当读取不到字符串的时候,返回null
while((str=br.readLine())!=null){
System.out.println(str);
}
//读完了之后,定义的对象fr就已经读到了文件最后,所以下方的fr.read的返回值为-1,不再读取了。
char[] c = new char[1024];
int len = 0;// 记录每次读到的长度
StringBuffer sb = new StringBuffer();
while ((len = fr.read(c, 0, 10)) != -1) {
// 每循环一次,将读取到的内容存放在sb中。
//每一次获取char数组的长度,存入到sb动态字符串数组中。
sb.append(c, 0, len);
}
System.out.println(sb.toString());
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (fr != null) {
try {
fr.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}