一、对文件进行读写操作
1.使用FileInputStream读取数据
//从文件中读取数据
public static void FileInputStream() throws IOException{
FileInputStream in=new FileInputStream("E:\\test.txt");
int tmp;
String result="";
while ((tmp=in.read())!=-1) {
result+=(char)tmp;
}
System.out.println(result);
in.close();
}
2.把数据写入文件中
//使用FileOutputStream写入数据
public static void FileOutputStream() throws IOException{
//如果第二个参数为 true,则将字节写入文件末尾处
java.io.FileOutputStream out=new java.io.FileOutputStream("E:\\test.txt",true);
String str="how are you ?";
byte[] b=str.getBytes();
out.write(b);
out.close();
}
//使用PrintStream或者PrintWriter
public static void B() throws FileNotFoundException{
//创建文件输出流(向文件中写入数据)
// FileOutputStream fos=new FileOutputStream(new File("E:"+File.separator+"test.txt"));
//如果第二个参数为 true,则将字节写入文件末尾处(没有这个参数则根据路径新建文件夹,同上的另一种写法)
FileOutputStream fos=new FileOutputStream("E:"+File.separator+"test.txt",true);
//创建字节打印流
PrintStream ps=new PrintStream(fos);
ps.println("it's wonderful !");
ps.println("it's beaultiful !");
String name="刘星";
int age=14;
float score=990.356f;
String sex="male";
//格式化输出printf();
ps.printf("姓名:%s;年龄:%s;成绩:%s;性别:%s",name,age,score,sex);
ps.println();
ps.close();
}
二、对文件进行复制
public static void copy() throws IOException{
FileInputStream in=new FileInputStream("E:\\test.txt");
java.io.FileOutputStream out=new java.io.FileOutputStream("C:\\test11.txt");
//先定义一个字节缓冲区,减少I/O次数,提高读写效率
byte[] buffer=new byte[10240];
int len;
//FileOutputStream.write(byte[] b,int off,int len)
//指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
while ((len=in.read(buffer))!=-1) {
out.write(buffer, 0, len);
}
/*while ((len=in.read())!=-1) {
out.write((char)len);
}*/
in.close();
out.close();
}