使用字节流及缓存字节流读取、写入和拷贝文件
来源:互联网 发布:算法第四版英文版pdf 编辑:程序博客网 时间:2024/05/19 12:23
1.使用FileInputStream读取文件
package peixun;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;public class ReadByteStream { public static void main(String[] args) { try { FileInputStream fis = new FileInputStream("text.txt"); byte input[] = new byte[21]; fis.read(input);//读取字节流文件 String inputString = new String(input);//将字节流文件转换成字符串 System.out.println(inputString); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }}
2.使用FileOutputStream写入文件
package peixun;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class WriteByteStrean { public static void main(String[] args) throws FileNotFoundException { try { FileOutputStream fos = new FileOutputStream("textw.txt");//流的打开 String outString = "write 123456写出数据"; byte[] output = outString.getBytes();//流的写入,将文本文件获取为字节数组 fos.write(output);//流的读取 fos.close();//关闭流操作 } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
3.使用输入、输出流实现文件的拷贝
package peixun;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;public class CopyByByteStream { public static void main(String[] args) { try { FileInputStream fis = new FileInputStream("123.png");//读取文件数据 FileOutputStream fos = new FileOutputStream("123_new.png"); byte [] input = new byte[50]; while (fis.read(input) != -1) { fos.write(input);//将数组写出到新的文件 } fis.close(); fos.close(); System.out.println("done"); } catch (Exception e) { e.printStackTrace(); } }}
4.使用缓冲的字节流读写数据:
package peixun;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class ReadByBufferedByteStream { public static void main(String[] args) { try { FileInputStream fis = new FileInputStream("1.mp4"); BufferedInputStream bis = new BufferedInputStream(fis,100000);//设置缓冲区大小,一般大于数组的大小。 FileOutputStream fos = new FileOutputStream("2.mp4"); BufferedOutputStream bos = new BufferedOutputStream(fos,100000); byte [] input = new byte[100];//大型的文件对应的数组大一点,比较小的文件数组小一点。 int count = 0; long before = System.currentTimeMillis(); while (bis.read(input) != -1) { bos.write(input); count++; } bis.close(); fis.close(); fos.close(); bos.close(); System.out.println("count:"+count); System.out.println(System.currentTimeMillis()-before); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }}
0 0
- 使用字节流及缓存字节流读取、写入和拷贝文件
- Java之基于字节流文件的写入和读取
- 字节流读取、写入、复制文件
- 通过java字节流复制文件,逐个字节读取写入
- java缓冲字节流复制文件,逐个字节读取、写入
- Java 字节流 读取和写入
- 文件写入字节流
- 练习 2017-8-14 使用缓存字节流 和 字节流 拷贝性能对比。
- java使用标准字节流拷贝文件
- java(147)字节流文件读取,写入,追加文件
- 字节流读取文件
- 文件读取字节流
- Java-文件读取写入整型(字节流)
- 字节流--读取、录入、拷贝文件实例
- 使用字节流和字符流读取文件
- 文件字节流--拷贝文件夹
- io字节流的基本的读取和写入
- java字节流的方式复制一个文件,按数组读取和写入
- java图形记事本01
- JAVA集合总结
- zynq 网上资料
- iOS开发 根据日期计算是星期几
- HDU 1274 The Perfect Stall(二分图匹配)
- 使用字节流及缓存字节流读取、写入和拷贝文件
- hash的利用
- crontab命令
- HDU 2328 Corporate Identity
- Overlay网络与物理网络的关系-屈寸 王长强(Overlay 网络)
- cxgrid行,列颜色控制
- 观察者模式
- 操作系统之VMware workspace中安装Ubuntu
- 黑马程序员------Java基础学习------多线程