- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 JAVA IO—字符流 课程目标 Reader Writer InputStreamReader OutputStreamWriter FileReader FileWriter BufferedReader PrintWriter 体验项目——记事本 如图的窗体布局,当点击“打开”时打开文件对话框,并把打开的文本文件的内容显示到窗体的文本域中,当点击“保存”时把文本域的内容保存到文件中,点击“Exit”时退出程序。 字符流 字符流顾名思义是用来操作字符的,其实字节流类提供的功能足以满足处理任何类型I/O操作的需要,但是它们不能直接处理Unicode字符。但JAVA的一个主要目的是支持“只写一次,在各处运行”的思想,所以它必须包括对字符直接的I/O支持。本节讨论了几个字符I/O类。在字符流层次的顶部是Reader和Writer抽象类。 字节流和字符流的区别和各自的用途 字符流处理的单元为两个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。所以字符流是由JAVA虚拟机将字节转化以两个字节的Unicode字符为单位的字符而组成的,所以它对多国语言支持性比较好,如果是音频文件、图片、歌曲,就用字节流比较好,但如果是关系到中文(文本)的,用字符流比较好。 流类表 字符类的层次结构 Reader Reader类是所有输入流类的祖先,所以它只定义了一些最基本的方法,它直接的下一级子类是BufferedReader类、CharArrayReader类、FilterReader类、InputStreamReader类、PipedReader类和StringReader类等。这些类的所有方法在发生错误时都会抛出IOException异常。 Reader的常用方法 abstract void close() 关闭输入源。如果继续读会产生IOException异常。 void mark(int numChars) 放置一个标记到输入流的当前点。它会一直有效,直到读取了numChars个字符。 boolean markSupported() 如果这个流支持mark()/reset()方法,将返回true。 int read() 返回调节器所用的输入流中下一个可用字符的整数表示。如果文件结束,返回-1。 Reader的常用方法 int read(char buffer[ ]) 试图读buffer.length个字符到buffer中,并且返回成功读取的实际字符数。如果遇到文件结尾,返回-1。 abstract int read(char buffer[ ],int offset,int numChars) 将字符读入数组的某一部分,返回成功读取的字符数。如果遇到文件结尾,则返回-1。 boolean ready() 如果下一个输入请求不必等待,则返回true;否则,返回false。 void reset() 重置输入指针到前面设置的标记。 long skip(long numChars) 跳过numChars个字符输入,返回实际跳过的字符数。 Writer Writer类最直接的子类是BufferedWriter类、CharArrayWriter类、FileWriter类、PrintWriter类等。Writer类与Reader类一样,它也是抽象类,用于定义字符流输出的抽象类。因此它提供的方法中不包括构造方法,无法直接产生它的一个实例对象。所以要由其子类去构造真正的输出流实体对象,然后就可以把那个由其子类构造的输出流拿来使用。并且在有异常的情况下会抛出IOException异常。 Writer的常用方法 writer append(char ch)throws IOException 追加ch到调用输出流末尾,返回对调用输出流的引用。 writer append(CharSequence chars)throws IOException 追加chars到调用输出流末尾,返回对调用输出流的引用。 abstract void close() 关闭输出流。如果继续写入会产生IOException异常。 abstract void flush() 确定输出状态以便清空任何缓冲区,即清空输出缓冲区。 Writer的常用方法 void write(int ch) 写入单个字符到调用的输出流。注意参数是一个整数,它允许使用不必转换为char的表达式来调用write。 void write(char buffer[ ], int offset ,int numChars) 写入buffer[]数组
您可能关注的文档
最近下载
- 论 自由 精品读本.pdf
- 医疗器械质量管理体系文件.pptx
- 金融中心施工总承包工程项目特色与观摩亮点介绍.pptx
- 小学数学六年级上册期中易错题重难点试卷含详细答案解析1524.docx
- 做自己的心理医生【26页】.pptx
- Module 4 单元整体教学设计 外研版(三起)六年级上册英语.docx
- 环球金融中心项目专项测量放线施工方案.docx
- 环球金融中心项目施工总承包工程质量创优策划.ppt
- 鼎信JB-QT-TS3200火灾报警控制器(联动型)安装使用说明书 XF2.900.029AS Ver.pdf VIP
- 中华护理学会团体标准TCNAS 21─2021解读:胰岛素皮下注射(1).pptx
文档评论(0)