快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

JAVA - IO包的学习引导文章(摘抄)

什么是IO   IO(Input/Output)是计算机输出/输出的接口。Java的核心库java.io提供了全面的IO接口,包括:文件读写,标准设备输出等等。Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。此外,Java也对块传输提供支持,在核心库java.nio中采用的便是块IO。关于NIO我们在后面还有专门的讨论。  流IO的好处是简朴易用,缺点是效率较低。块IO效率很高,但编程比较复杂。Java IO模型   Java的IO模型设计异常优秀,它使用Decorator模式,按功能划分Stream,您可以动态装配这些Stream,以便获得您需要的功能。例如,您需要一个具有缓冲的文件输入流,则应当组合使用FileInputStream和BufferedInputStream。  Java的IO体系分Input/Output和Reader/Writer两类,区别在于Reader/Writer在读写文本时能自动转变内码。基本上,所有的IO类都是配对的,即有XxxInput就有一个对应的XxxOutput。Java IO教程   假如您对Decorator模式异常了解,就能容易地看出Java的IO类结构:根接口是InputStream/OutputStream,充当数据源的IO类有FileInputStream/FileOutputStream,ByteArrayInputStream/ByteArrayOutputStream等,充当装饰功能的IO类有BufferedInputStream/BufferedOutputStream,DataInputStream/DataOutputStream等,它们都是继续装饰接口FilterInputStream/FilterOutputStream。使用IO时,首先创建一个数据源IO,然后根据需要的功能创建装饰类IO,其构造函数的参数为已创建的数据源IO。我们以创建一个具有缓冲的文件输入流为例,假定需要从磁盘读取文件“C:/log.txt”:// 创建一个FileInputStream:FileInputStream fileInput = new FileInputStream("C://log.txt"); // 创建一个BufferedInputStream:BufferedInputStream bufferedInput = new BufferedInputStream(fileInput); // 现在得到的bufferedInput即是具有缓冲的文件输入流  或者进一步简写如下:InputStream input = new BufferedInputStream(    new FileInputStream("C://log.txt"));// 现在得到的input即是具有缓冲的文件输入流  在您对Java的IO有了总体了解后,我们推荐您看看教程Introduction to Java I/O和I/O: Reading and Writing。Java NIO编程 NIO提供了对块IO的支持,使用块IO的好处是效率更高,而且Java的NIO将直接调用操作系统提供的许多高级IO接口,支持块传输,读写锁定,异步IO等功能,效率异常高。NIO的编程模型是通道和缓冲区,推荐您阅读Getting started with new I/O(中文)。



返回类别: 教程
上一教程: P2P流媒体为网络应用带来改变
下一教程: jdk1.5学习之RowSet(一)

您可以阅读与"JAVA - IO包的学习引导文章(摘抄)"相关的教程:
· 介绍一些 Java NIO 的学习文章,以方便各位的学习!
· [学习笔记]Thinking in Java (the 2nd edition) Study Note (4)
· Java网络编程的学习笔记(二)
· Java网络编程的学习笔记(一)
· [学习笔记]Thinking in Java (the 2nd edition) Study Note (3)
    微笑服务 优质保证 索取样品