对文件的读写有两种方式:字符流和字节流
字节流读文件
public static String byteReading(File file){
StringBuilder sb = new StringBuilder();
try {
FileInputStream in = new FileInputStream(file);
byte[] bytes = new byte[1024];
int s;
while ((s=in.read(bytes))!=-1){
sb.append(new String(bytes, 0, s, "utf-8"));
}
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
字符流读文件
public static String charReading(File file){
StringBuilder sb = new StringBuilder();
try {
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
String s;
while ((s=bufferedReader.readLine())!=null){
sb.append(s);
}
bufferedReader.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
字节流写文件
public static void byteWrite(File file){
try {
FileOutputStream fos = new FileOutputStream(file);
String s = "hello world!";
fos.write(s.getBytes());
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
字节流写文件
public static void charWrite(File file){
FileWriter fw = null;
try {
fw = new FileWriter(file);
String s = "hello world";
fw.write(s,0,s.length());
fw.flush();
} catch (IOException e) {
e.printStackTrace();
}
}