黑马程序员_IO流(1)
来源:互联网 发布:为什么淘宝贷款用不了 编辑:程序博客网 时间:2024/05/19 00:41
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
IO流用来处理设备之间的数据传输
Java对数据的操作是通过流的方式
Java用于操作流的对象都在IO包中
流按操作数据分为两种:字节流与字符流。
流按流向分为:输入流,输出流。
字节流的抽象基类:
InputStream ,OutputStream。
l字符流的抽象基类:
Reader , Writer。
注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。
如:InputStream的子类FileInputStream。
如:Reader的子类FileReader。
记忆规则:后缀名表示的是父类,前面表示的操作对象。<A">
输入输出的方向是相对于程序来说的所以input和read是从程序外部读取数据 例如文件,图片,System.in等。output和writer相反。IO体系的类很多都用了装饰模式,装饰模式利用了原有的类,增强了原有类某些方法的功能,同时又不用继承原有类,因此比继承灵活,因为只是功能增强,所以装饰类与被装饰类通常在一个体系中。以Reader与Buffered为例,BufferedReader就是在其构造函数中封装了Reader类对象,并将父类的read方法读到的字符存到类中的StringBuilder中,然后从StringBuilder中一次性读出,减少了磁盘的写操作,提升了写效率。IO操作因为涉及到IO所以会报FileNotFound等异常,所以设计到IO操作就应该进行异常处理。下面是文件拷贝的代码
public class CopyText {public static void main(String[] args) { BufferedReader fr = null; BufferedWriter fw = null; String len=null; try { fr = new BufferedReader(new FileReader("F://59633.txt")); fw = new BufferedWriter(new FileWriter("E:\\filetest.txt")); while((len = fr.readLine())!= null){ fw.write(len); fw.newLine(); fw.flush(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { if(fw!= null) fw.flush(); fw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { if(fr!= null) fr.close(); System.out.println("文件复制完成"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
- 黑马程序员_IO流(1)
- 黑马程序员_IO流(1)
- 黑马程序员_io流1
- 黑马程序员_IO流(1)
- 黑马程序员_IO流1
- 黑马程序员_IO流1
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 黑马程序员_IO流
- 查找方法和算法的总结
- struts2+jquery+json集成
- 千万级并发实现的秘密:内核不是解决方案,而是问题所在!
- ubuntu下CHM阅读软件
- Android 开发的几点小问题
- 黑马程序员_IO流(1)
- 阿里巴巴2013实习招聘笔试题5月19日
- DataGridView DataGridViewCheckBoxColumn编辑时实时触发事件
- linux中的IO端口映射和IO内存映射
- oracle数据库归档模式浅析
- Graph and Queries hdu3762
- SGU133 Border
- 浅析人脸检测之Haar分类器方法
- 织梦 DeDeCMS 添加自定义属性的方法