IO流笔记第二发 简单拷贝io流
2016-03-04 19:10
288 查看
用FileInputStream和FileOutputStream做一个简单的拷贝操作。中间需要注意的是这里采用了一个处理异常的模板。以及对文件拷贝时数据不足512个字节或者多余512个字节的处理。用fout.write(buf,0,len);这个操作来读buf中0到len个可以处理数据不足,用do while (fin.available()>0);可以看文件中是否还有数据,如果有的话就继续读 可以处理数据大于512个字节的情况。最后用抛一个throw new RuntimeException("关流失败!!");//前后台知识点,给用户看的,这个RuntimeException是给用户看的,类似于404not
found这种类型。简单的加密处理就是在每次读进来的时候进行加减处理。解密的原理就是写的时候先用加密的原理加减掉,再输出来。但是这种简单的加密解密有不足,因为有的点是处于临界,会失真的。核心思想就是数据读取和写的时候可以进行变换处理
found这种类型。简单的加密处理就是在每次读进来的时候进行加减处理。解密的原理就是写的时候先用加密的原理加减掉,再输出来。但是这种简单的加密解密有不足,因为有的点是处于临界,会失真的。核心思想就是数据读取和写的时候可以进行变换处理
package cn.hncu.io1; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class FileCopySteam { public static void main(String[] args) { String dir1="e:/abc/a/"; String dir2="e:/abc/b/"; String fileName="a.txt"; byte buf[]=new byte[512]; //io流的异常处理的模板 FileInputStream fin=null; FileOutputStream fout=null; try { fin=new FileInputStream(dir1+fileName); fout=new FileOutputStream(dir2+fileName); do { int len=fin.read(buf); fout.write(buf,0,len); } while (fin.available()>0);//用fin.available()来判断是否还有东西。 } catch(IOException e){ System.out.println("我输出的io流信息有错!!!"); }finally{ try{ if(fin!=null){ fin.close(); } if(fout!=null){ fout.close(); } }catch (Exception e) { throw new RuntimeException("关流失败!!");//前后台,给用户看的 } } } }
相关文章推荐
- Python 3 iter函数用法简述
- Java的Exception和Error面试题10问10答
- 8629 热身游戏
- ATS http — >https
- Qt5之事件学习总结
- Kinect for Windows V2和V1对照开发___深度数据获取并用OpenCV2.4.10显示
- 制作win10 usb 启动盘
- Cordova各个插件使用介绍系列(四)—canvas2ImagePlugin保存二维码到手机本地
- Exynos4412 所用内存 —— DDR2
- SpringMVC中使用Interceptor拦截器
- Android源码浅析: Message/Handler/MessageQueue/Looper
- cocos2dx 按钮与标签
- 从LayoutInflater分析XML布局解析成View的树形结构的过程
- Android开发之基本控件
- 2015广东省强网杯CTF初赛题之大黑阔writeup
- iOS经常使用的加密算法
- ArcGIS Pro 1.2 SDK新鲜出炉
- Android之ListView的高级封装!
- Mysql_学习笔记
- Cordova各个插件使用介绍系列(四)—canvas2ImagePlugin保存二维码到手机本地