当前位置:   article > 正文

文件流之文件输出流FileOutputStream_file转outputstream

file转outputstream
一 介绍
FileOutputStream实现了向文件中写入byte数据的方法

二 打印数据到文件
  1. package com.imooc.io;
  2. import java.io.FileOutputStream;
  3. import java.io.IOException;
  4. public class FileOutDemo1 {
  5. /**
  6. * @param args
  7. */
  8. public static void main(String[] args) throws IOException {
  9. // TODO Auto-generated method stub
  10. //如果该文件不存在,则直接创建,如果存在,删除后创建
  11. FileOutputStream out = new FileOutputStream("demo/out.dat");
  12. out.write('A');//写出了'A'的低八位
  13. out.write('B');//写出了'B'的低八位
  14. int a = 10;//write只能写八位,那么写一个int需要些4次每次8位
  15. out.write(a >>> 24);
  16. out.write(a >>> 16);
  17. out.write(a >>> 8);
  18. out.write(a);
  19. byte[] gbk = "中国".getBytes("gbk");
  20. out.write(gbk);
  21. out.close();
  22. IOUtil.printHex("demo/out.dat");
  23. }
  24. }

三 运行结果
41 42 00 00 00 0a d6 d0 b9 fa

四 拷贝文件
  1. /**
  2. * 文件拷贝,字节批量读取
  3. * @param srcFile
  4. * @param destFile
  5. * @throws IOException
  6. */
  7. public static void copyFile(File srcFile,File destFile)throws IOException{
  8. if(!srcFile.exists()){
  9. throw new IllegalArgumentException("文件:"+srcFile+"不存在");
  10. }
  11. if(!srcFile.isFile()){
  12. throw new IllegalArgumentException(srcFile+"不是文件");
  13. }
  14. FileInputStream in = new FileInputStream(srcFile);
  15. FileOutputStream out = new FileOutputStream(destFile);
  16. byte[] buf = new byte[8*1024];
  17. int b ;
  18. while((b = in.read(buf,0,buf.length))!=-1){
  19. out.write(buf,0,b);
  20. out.flush();//最好加上
  21. }
  22. in.close();
  23. out.close();
  24. }

五 测试代码
  1. package com.imooc.io;
  2. import java.io.File;
  3. import java.io.IOException;
  4. public class IOUtilTest3 {
  5. /**
  6. * @param args
  7. */
  8. public static void main(String[] args) {
  9. // TODO Auto-generated method stub
  10. try {
  11. IOUtil.copyFile(new File("e:\\javaio\\日记1.txt"), new File(
  12. "e:\\javaio\\日记2.txt"));
  13. } catch (IOException e) {
  14. // TODO Auto-generated catch block
  15. e.printStackTrace();
  16. }
  17. }
  18. }



声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/147094
推荐阅读
相关标签
  

闽ICP备14008679号