chIO入输出流.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chIO入输出流

第十讲 Java数据流(续) 在上一讲中,我们主要讲了用于对字节流操作的有关的输入输出流。 基本数据流:InputStream和OutputStream 特点:抽象类,基类,不能直接与数据源和目的地建 立联系。 文件数据流:FileInputStream和FileOutputStream 特点:用于和文件建立联系,从文件中读写字节流。 缓冲区数据流:BufferedInputStream和 BufferedOutputStream 特点:用于在已经创建好的数据流上串接一个缓冲区,提高读写速度。 注意:不能直接与数据源和目的地建立联系。 数据数据流: DataInputStream和DataOutputStream 特点:从数据流中读写java的基本数据类型。 注意:不能直接与数据源和目的地建立联系。 对象数据流:ObjectInputStream和ObjectOutputStream 特点:用于将对象的数据成员以数据流的方式 存储。 注意:对象的静态数据成员不能存储,有些非静态的数据成员(线程,必威体育官网网址)需要加修饰字transient。不能直接与数据源和目的地建立联系。 分析下列语句的对与错 输入: FileInputStream is= new FileInputStream(“file.dat”); DataInputStream is= new DataInputStream(“file.dat”); BufferedInputStream is= new BufferedInputStream(System.in); ObjectInputStream is= new ObjectInputStream(“file.dat”); 例题:请写出符合下列要求的数据流。 将一个已经存在的文件f1.dat复制成另一个文件f2.dat。 给出可用的方案: 方案1: 输入流: 输出流: 例题:请写出符合下列要求的数据流。 方案2: 输入流: 输出流: 刚才介绍的几种字节数据流,一般不用于读写字符串。 为什么? 读写字符串应该用什么流? 读者和写者——Reader、 Writer 读者(Reader)和写者(Writer)是Java提供的用于读写字符的输入输出流的基类。 其他程序设计语言使用ASCII字符集,Java使用Unicode字符集来表示字符串和字符。 ASCII字符集是以一个字节(8bit)来表示一个字符,所以可以认为一个字符就是一个字节(byte) ,一个汉字当作两个字符处理。 Java使用的Unicode是一种大字符集,要用两个字节(16bit)来表示一个字符,这时字节与字符就不再一样了。 为了实现与其他程序语言及不同平台进行交互,Java必须提供一种16位的数据流处理方案。这种16位方案被称作读者Reader和写者Writer。 在java.io包中有许多不同类对其进行支持。其中最重要的方案是InputStreamReader和OutputStreamWriter。 InputStreamReader和OutputStreamWriter是字节流和字符流的转换接口。在构造一个InputStreamReader和OutputStreamWriter时,还可以定义16位的Unicode和其他平台的特定表示方法之间的转换规则。 使用这种转换规则,Java能够充分利用本地平台字符集设置的灵活性,同时又可通过内部使用Unicode保留平台无关性。 由于单字节表示字符的方法使用的广泛性,所以在进行Java字符与其他平台转换时如果不进行特定声明,在默认情况下,单纯构造一个读者或写者连接到一个数据流,则将字节码作为默认平台和Unicode进行转换。 转换规则: 在许多英语国家中采用的Latin-1编码系统。ISO8859-1是Latin-1编码系统映射到ASCII的标准。 也可以利用目前已提供支持的编码形式列表中的一项来指定另一种字节编码方式。这个编码形式列表可以在native2ascii工具文件中找到。 转换规则的应用 有的时候需要从与本地字符编码方式不同的数据源中读取数据。 例如从网络上一台不同类型的机器上读取数据,这时就需要用明确的字符编码方式来构造InputStreamReader,否则,程序会把读到的字符当作本地表达方法来进行转换,这样可能会引起错误。 如果读取的字符流不是来自本

文档评论(0)

1444168621 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档