字节流输出
OutputStream :写入。这是抽象类,是输出字节流的超类,操作数据的都是字节
FileOutputStream是OutputStream可用来写入数据到文件的子类,
FileOutputStream构造方法,如果指定的文件不存在,他会创建一个,如果指定的文件存在,他会创建并覆盖
1 public static void main(String[] args) throws FileNotFoundException {
2 File f = new File("E:\\java学习\\6月15号\\a.txt"); //创建File对象路径
3 FileOutputStream f1 = new FileOutputStream(f); //创建一个a.txt文件
FileOutputStream f = new FileOutputStream("E:\\java学习\\6月15号\\a.txt"); //调用FileOutPutStream(String name)构造方法
1 FileOutputStream f = new FileOutputStream("E:\\java学习\\6月15号\\a.txt");
2 byte[] by ={97,98,99,100}; 创建一个byte【】 数组,调用write(byte【】 b)方法就把字节写入a.txt
3 f.write(by);
字节输入流
InputStream :读取。是 字节输入流的超类,这是一个抽象方法,定义了对数据输入的方式
FileInputStream 是InputStram的子类,实现了字节输入
1 public class Tese {
2
3 public static void main(String[] args) throws IOException {
4 File f = new File("E:\\java学习\\6月25号\\a.txt");
5 FileInputStream f2 =new FileInputStream(f);
6 byte[] by = new byte[1024];
7 int len =0; 用来接收字节长度,如果不等于-1,就一直往下读取
8 while((len=f2.read())!=-1){
9 System.out.print((char)len);
10 }
11 f2.close();
12 }
13 }
复制文件
先读取后写入
public class Tese {
public static void main(String[] args) throws IOException {
File f = new File("E:\\java学习\\6月25号\\a.txt"); 创建读取的对象文件,源文件
FileInputStream f2 =new FileInputStream(f);
FileOutputStream f3 =new FileOutputStream("E:\\java学习\\6月25号\\b.txt"); 创建接收的文件,目的文件
byte[] by = new byte[1024];
int len =0;
while((len=f2.read(by))!=-1){ 当len不等于-1,就一直写入
f3.write(by, 0, len); 读取by数组,从第0位开始,到-1位结束的
}
f2.close();
f3.close();
}
}