FileInputStream、FileOutputStream类
package test;
import java.io.FileInputStream;
import java.io.IOException;
//以字符的形式输出E盘中的ad.txt中的内容,以每次读取一个字节的方式
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
FileInputStream fil=null;
// FileOutputStream fout=null;
int read=0;
try {
fil=new FileInputStream("e:\\ad.txt");
while((read=fil.read())!=-1) {
System.out.print((char)read);
}
// fout=new FileOutputStream("e:\\ad.txt",false);
//上面语句中的false意思是直接覆盖
//若是ture,则在原来的基础上续写
//都不写默认是覆盖
// fout.write('A');
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
fil.close();
// fout.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
package test;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class test {
//以字符串的形式输出E盘中的ad.txt中的内容,以读取字节数组的方式,相比一个字节一个字节读取提高了速度
public static void main(String[] args) {
// TODO Auto-generated method stub
FileInputStream fil=null;
// FileOutputStream fout=null;
int read=0;
byte[] b=new byte[1024];//要足够大
//文本文件有时中间有汉字,一个汉字几个字节
//b数组不够大可能会导致部分汉字只存进去了一部分,会出现乱码
try {
fil=new FileInputStream("e:\\ad.txt");
while((read=fil.read(b))!=-1) {
System.out.print(new String(b));
}
// fout=new FileOutputStream("e:\\ad.txt");
// fout.write('A');
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
fil.close();
// fout.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
文件复制
package test;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
//将E盘中的cat.jpg复制到D盘,并且将其命名为copy,以每次读取一个字节的方式
public class test2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
FileInputStream fis;
FileOutputStream fos;
int read=0;
try {
fis=new FileInputStream("e:\\cat2.jpg");
fos=new FileOutputStream("d:\\copy.jpg",false);
//上面语句中的false意思D盘中若有同样名字的copy则覆盖(注意这里说的同样名字的是指的同类型文件)
//若是ture,若D盘中有同样名字的copy则不覆盖
while((read=fis.read())!=-1) {
fos.write(read);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// finally {
// try {
// fos.close();
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// }
}
}
缓冲流---高效流