- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Java程序设计之网络编程》输入输出处理、线程ppt122
《Java程序设计之网络编程》 计算机学院 第9章 输入输出处理 主要内容 9.1 I/O流的概念和划分 9.2 文件的操作 9.3 字节流处理 9.4 字符流处理 9.5 串行化 9.1 I/O流的概念和划分 数据流(Stream)是一组有顺序的、有起点和终点的字节集合,是对输入和输出的总称和抽象。 Java程序通过流来完成输入/输出。流通过Java的输入/输出系统与物理设备链接。 Java程序通过流来完成输入/输出。流通过Java的输入/输出系统与物理设备连接。尽管与它们链接的物理设备不尽相同,所有流的行为具有同样的方式。这样,相同的输入/输出类和方法适用于所有类型的外部设备。这意味着一个输入流能够抽象多种不同类型的输入:从磁盘文件,从键盘或从网络套接字。同样,一个输出流可以输出到控制台,磁盘文件或相连的网络。流是处理输入/输出的一个简便的方法。 Java 2 定义了两种类型的流:字节类和字符类。字节流(byte stream)为处理字节的输入和输出提供了方便的方法。例如使用字节流读取或书写二进制数据。字符流(character stream)为字符的输入和输出处理提供了方便。它们采用了统一的编码标准,因而可以国际化。在某些场合,字符流比字节流更有效。 需要声明:在最底层,所有的输入/输出都是字节形式的。基于字符的流只为处理字符提供方便有效的方法。 Java流的划分 字节流类 处理字节的输入和输出提供了方便的方法 字符流类 为字符的输入和输出处理提供了方便 读写数据的单位不同 最主要的是Read() 和Write() 方法 每个流的特点 InputStream 1. int read() 从输入流中读取下一个字节,返回范围在0到255之间的一个整数,该方法的属性为abstract,必须为子类所实现。 2. int read(byte []) 从输入流中读取长度为b.1ength的数据,写入字节数组b,并返回读取的字节数。 3. int read(byte[], int off,int len) 从输入流中读取长度为len的数据,写入字节数组b中从索引off开始的位置,并返回读取的字节数。 对于以上方法,如果到达流的末尾位置,则返回-1表明流的结束。 这三个方法提供对输入管道数据的存取。简单读方法返回一个int值,它包含从流里读出的一个字节或者-1,其中后者表明文件结束。其它两种方法将数据读入到字节数组中,并返回所读的字节数。第三个方法中的两个int参数指定了所要填入的数组的子范围。 4. void close() 你完成流操作之后,就关闭这个流。如果你有一个流所组成的栈,使用过滤器流,就关闭栈顶部的流。这个关闭操作会关闭其余的流。 5. int available() 这个方法报告立刻可以从流中读取的字节数。在这个调用之后的实际读操作可能返回更多的字节数。 6. skip(long) 这个方法丢弃了流中指定数目的字符。 7. boolean markSupported() 确定输入流是否支持方法mark()和reset()。 8. void mark(int) 在输入流的当前读取位置作标记。从该位置开始读取readlimit所指定的数据后,标记失 效。 9. void reset() 重置输入流的读取位置为方法mark()所标记的位置。 如果流支持“回放”操作,则这些方法可以用来完成这个操作。如果mark()和reset()方法可以在特定的流上操作,则markSupported()方法将返回true。mark(int)方法用来指明应当标记流的当前点和分配一个足够大的缓冲区,它最少可以容纳参数所指定数量的字符。在随后的read()操作完成之后,调用reset()方法来返回你标记的输入点。 从以上方法中可以看到,InputStream中主要提供了对数据读取的基本支持,其中的方法 通常都需要在子类中被重写,以提高效率或是适合于特定流的需要。 OutputStream 1. void write(int) 将指定的字节b写入输出流。该方法的属性为abstract,必须为子类所实现。 注意:参数中的b为int类型,如果b的值大于255,则只输出它的低位字节所表示的值。 2. void write(byte b[]) 把字节数组b中的b.length个字节写入输出流。 3. void write(byte b[], int off, int len) 把字节数组b中从索引off开始的len个字节写入输出流。 这些方法写输出流。和输入一样,总是尝试以
您可能关注的文档
最近下载
- 海南省乡村旅游用地精细化管理问题与对策研究.pdf VIP
- 10kV变压器及高低压柜安装施工方案 - 电气安装工程.docx VIP
- 初中数学八年级上册 三角形 练习题.doc VIP
- GST-QKP04型气体灭火控制器检验报告.pdf VIP
- 专题13 看图写话-2022-2023学年二年级语文上册寒假专项提升(部编).docx VIP
- 北京某养老院居室空间使用调查研究.pdf VIP
- 2023-2024年中国付费自习室行业发展现状与消费趋势调查分析报告.docx VIP
- 2025年九年级数学中考二轮复习专题四边形中的十字架模型与相似三角形综合问题.docx VIP
- 廉洁文化进校园,廉洁在我心.ppt VIP
- 避免潜在的风险.pdf VIP
原创力文档


文档评论(0)