java网络编程第6章.ppt_第1页
java网络编程第6章.ppt_第2页
java网络编程第6章.ppt_第3页
java网络编程第6章.ppt_第4页
java网络编程第6章.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章,表单中的Java I/o字符流、课程目标、reader writer input stream reader output stream writer file reader file writer buffered reader printwriter、体验性打开的文本文件内容字符流顾名思义,是用于操作字符的字符流。实际上,字节流类提供了处理任何类型I/o操作的功能,但不能直接处理unicode字符。但是,JAVA的主要目的之一是支持“只写一次,在任何地方运行”的想法,因此必须包括对字符的直接I/O支持。牙齿部分介绍了几个茄子字符I/o类。在文字流层次的顶部是Reader和Write

2、r抽象类。字节流和字符流的区别和用途,字符流的处理单元分别是操作字符、字符数组或字符串的2字节unicode字符。字节流处理单元是单字节、操作数和字节数组。因此,字符流由JAVA虚拟机将字节转换为双字节unicode字符单位的字符组成,因此具有更好的多语言支持。对于音频档案、图片和歌曲,建议使用字节流;但是,对于中文(文本),建议使用字符流。流类表,字符类的层次结构,Reader和Reader类是所有输入流类的祖先,因此只定义最基本的方法。下面的子类是BufferedReader类、CharArrayReader类和FilterReader,这些类的所有方法都会在出错时引发IOExceptio

3、n异常。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中,并返回成功读取的实际字符数。出现档案

4、结束时返回-1。Abstract intread (charbuffer,int offset,int numchars)将字符作为数组的一部分读取,并返回成功读取的字符数。出现档案结束时返回-1。Boolean ready()不需要等待下一个输入请求时为true返回。否则,返回false。Void reset()将输入指针重置为以前设置的标签。Long skip(long numChars)跳过numChars字符输入,返回实际跳过的字符数。Writer和Writer类的最直接子类是BufferedWriter类、CharArrayWriter类、FileWriter类和PrintWrite

5、r类。与Reader类类似,Writer类是定义字符流输出的抽象类的抽象类。因此,牙齿方法不包含配置方法,无法直接生成其中一个实例对象。因此,您可以在子类中组织实际输出流实体对象,然后使用由子类组成的输出流。如果存在异常,则会抛出IOException异常。Writer的常用方法,Writer append(charch)throws io exception将ch附加到调用输出流的末尾,并返回对调用输出流的引用。writerappend(char sequence chars)throws io exception将chars添加到调用输出流的末尾,并返回对调用输出流的引用。Abstract

6、 void close()关闭输出流。继续写入可能会导致IOException异常。Abstract void flush()确定所有缓冲区的输出状态,即清除输出缓冲区。这是写入程序将单个字符写入void写入(int ch)调用的输出流的常用方法。参数是一个整数,可以使用不需要转换为char的表达式调用write。Voidwrite (charbuffer,int offset,int numChars)将buffer数组的numChars个字符从offset写入到调用输出流。Void写入(String str)将str写入调用输出流。Voidwrite (string str,int off

7、set,int numChars)从offset开始记录str字符串中的numChars字符。inputstreamReader、inputstreamReader继承实现Reader抽象方法的Reader。InputStreamReader是字节流向字符流的桥。使用指定的charset读取字节并将其解码为字符。您可以指定使用的字符集名称。否则,可能是默认字符集。每次InputStreamReader调用read()方法时,都会从主输入流读取一个或多个字节。为了最大限度地提高效率,可以考虑在BufferedReader内包装InputStreamReader。BufferedReader类在以

8、下部分中介绍:例如,以下语句将从控制台读取的InputStreamReader转换为buffered reader:buffered reader in=new buffered reader(新输入流阅读器(系统).InputStreamReader的常用方法void close()关闭当前流。String getEncoding()返回牙齿流使用的字符编码名称。Int read()读取单个字符。Intread (charcbuf,int offset,int length)将字符作为数组的一部分读取。Boolean ready()通知您是否已准备好读取牙齿流。outputstreamWri

9、ter和outputstreamWriter继承写入程序类并实现写入程序的抽象方法。与InputStreamReader不同,OutputStreamWriter是字符流向字节流的桥。使用可以由名称指定或显示的字符集。否则,可以使用平台默认字符集。传递给牙齿write()方法的字符没有缓冲。为了最大限度地提高效率,建议将OutputStreamWriter包装到BufferedWriter中,以避免频繁调用转换器。BufferedWriter类在以下部分中介绍:例如:buffered writer out=new buffered writer(new output stream writer

10、(system . out);OutputStreamWriter的常用方法void close()关闭当前流。String getEncoding()返回牙齿流使用的字符编码名称。Int write(int c)写入单个字符。Intwrite (charcbuf,int offset,int length)写入字符数组的一部分。Void flush()刷新流的缓冲区。FileReader和FileReader类继承InputStreamReader,因此,除InputStreamReader的功能外,它还具有可用于直接读取档案内容的自身功能。也是读取文本文件的方便类。以前,在读取汉字时,必须

11、先使用File对象创建字节流对象,然后使用字节流对象配置字符流对象,这样才能读取和写入字符。FileReader可以直接实现这些功能。两个最常用的茄子配置文件:file reader(string filepath)file reader,其中file path是文件的完整路径名,fileObj是描述文件的file对象。FileReader的常用方法;从类java.io.InputStreamReader继承的方法:int read()读取单个字符并返回数据内容。Intread (charcbuf,intoffset,intlength)将字符作为数组的一部分读取,并返回读取的次数(而不是内容

12、)。FileWriter和FileWriter类继承OutputStreamWriter类,因此它具有OutputStreamWriter类的所有功能和唯一功能。FileWriter类可以创建用于写入文件的对象,然后通过使用File对象创建字节流对象,然后使用字节流对象配置字符流对象,FileWriter可以直接将字符写入文件。FileWriter的不同配置方法,FileWriter(String file path)FileWriter(String file path,Boolean append)FileWriter(FileWriter)File fileObjFile对象。FileW

13、riter的常用方法,从类java.io.OutputStreamWriter继承的方法是voidwrite (charcbuf,intoff,intlen)写入字符数组的一部分。Void write(int c)写入单个字符。Voidwrite (stringstr,intoff,intlen)写入字符串的一部分。BufferedReader和BufferedReader在Reader类中扩展,以提供常规缓冲文本读取,并提供适用于读取行分割文本的实用readLine()方法。BufferedReader适用于Reader,BufferedReader具有两个茄子配置函数buffered Re

14、ader(Reader input stream)。buffered reader(reader input stream)使用默认尺寸输入缓冲区创建缓冲区字符输入流。buffered reader(reader input stream,intbufsize)使用指定的大小输入缓冲区创建缓冲字符输入流。BufferedReader的常用方法BufferedReader继承Reader类,因此还添加了几个茄子默认读取方法,以此为基础读取文本行。close()关闭流。段宜恩(int)显示牙齿流的当前位置。MarkSupported()报告牙齿流是否支持mark()实现的操作。Read()读取单个

15、字符。Read(char,int,int)将多个字符作为数组读取。ReadLine()读取此行。Ready()报告牙齿流是否准备好进行读取。Reset()将流重置为最近的标签。Skip(长)跳过多个字符。PrintWriter和PrintWriter继承Writer类,但除此之外,它们还实现PrintStream的所有print()方法。与OutputStreamWriter类不同,PrintWriter可以直接执行,如果在实例化时将“flushOnNewline”值设置为ture,则在输出时将自动刷新该流的缓冲区,如果未设置牙齿值,则在使用println()输出时需要手动刷新。这意味着只有调

16、用flush()方法才能生效:PrintWriter的几种茄子常见配置方法;PrintWriter(OutputStream output stream)是新的print writer,它没有基于现有output stream的自动行刷新功能PrintWriter(OutputStream output stream,boolean flushonnewline)基于现有的output stream创建具有自动行刷新功能的新print writer。PrintWriter(写入程序输出流)基于现有写入程序创建新的写入程序,而不具有自动行刷新功能。PrintWriter (writer output stream,boolean flushonnewline)基于现有的写入程序创建具有自动行刷新功能的新写入程序。PrintWriter的常用方法,void print(String s)打印字符串。Void write(String s)写入字符串。Voidwrite (strings,intoff,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论