import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
/**
* 如果数据所在的文件 通过WINDOW自带的记事本打开能读懂里面的内容
* 要用字符流,其他要用字节流。如果你什么都不知道的话。就用字节流
* @author 牧佑叔叔
*
*字节缓冲输出流 - BufferedOutputStream
*字节缓冲输入流 - BufferedInputStream
*由于 字节流操作中文不是很方便。所以提供了转换流,
*/
public class FileBufferDemo {
public static void main(String[] args) {
InputStreamReader in = null;
OutputStreamWriter os = null;
try {
os = new FileWriter("D:\\xx.txt",true);
os.write("Hlleworld".toCharArray());
os.flush();
//读文件
StringBuilder sb = new StringBuilder();
in = new FileReader("D:\\xx.txt");
char[] buffer = new char[1024];
int len;
char[] but;
while((len = in.read(buffer)) != -1){
if(len < 1024){
but = new char[len];
System.arraycopy(buffer, 0, but, 0, len);
sb.append(new String(but));
} else {
sb.append(new String(buffer));
}
}
System.out.println(sb.toString());
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
if(os !=null){
os.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(in !=null){
in.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}