FileOutputStream类使用字节流操作文件,文件每次读取/写入以字节为单位
import java.io.*;
public class FileByte{
public static void main(String...args){
File file=new File("D:\\test.txt");
if(!file.exists())
try{
file.createNewFile();
}catch(Exception e){
e.printStackTrace();
}
try{
FileOutputStream out=new FileOutputStream(file);
byte bt[]="i eat apple".getBytes();
out.write(bt);
out.close();
}catch(Exception e){
e.printStackTrace();
}
try{
FileInputStream in=new FileInputStream(file);
byte bt1[]=new byte[1024];
int len=in.read(bt1);
System.out.println("文件中的信息是:"+new String(bt1,0,len));
in.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
FileWriter类使用字符流操作文件,文件每次读取/写入以字符(2字节)为单位,由于汉字占用两个字节,因此用字符流操作比较合适
import java.io.*;
public class FileChar{
public static void main(String...args){
File file=new File("D:\\test.txt");
if(!file.exists())
try{
file.createNewFile();
}catch(Exception e){
e.printStackTrace();
}
try{
FileWriter out=new FileWriter(file);
String s="我爱吃苹果";
out.write(s);
out.close();
}catch(Exception e){
e.printStackTrace();
}
try{
FileReader in=new FileReader(file);
char bt1[]=new char[1024];
int len=in.read(bt1);
System.out.println("文件中的信息是:"+new String(bt1,0,len));
in.close();
}catch(Exception e){
e.printStackTrace();
}
}
}