基于字符进行操作适用于操作双字节符号的首选。适用于读取文字类文件,并不适用于所有的文件类型,例如图片。
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
public class BufferedByStream {
public static void main(String[] args) {
String file = "src/docs/1.txt";
String con = "\r\nhelloJAVA";
writeStream(con,file);
String content = readerStream(file);
System.out.println(content);
}
private static void writeStream(String content,String fileName){
Writer write = null;
BufferedWriter buffer = null;
try {
write = new FileWriter(fileName,true);
buffer = new BufferedWriter(write);
buffer.write(content);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(buffer != null){
try {
buffer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(write != null){
try {
write.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
private static String readerStream(String fileName) {
String content = null;
Reader reader = null;
BufferedReader buffer = null;
try {
reader = new FileReader(fileName);
buffer = new BufferedReader(reader);
StringBuilder builder = new StringBuilder();
String line = new String();
while ((line = buffer.readLine()) != null) {
builder.append(line);
builder.append("\r\n");
}
content = builder.toString();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (buffer != null) {
try {
buffer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return content;
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。