- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[电脑基础知识]IO流
File类应用举例 File方法使用:case:FileDemo.java File中list方法的递归调用:case:ListAllFiles.java Filedialog使用:case:FileDisplay.java Filenamefilter接口应用:case:ImageFileFilter.java 字符编码 ASCII码:最高bit位都是0,表示的字符编码数字在0到127之间。 GB2312码:中国大陆将每个中文字符都用两个字节的数字来表示,中文字符的每个字节最高位bit都是1。 GBK码:在GB2312的基础上,对更多中文字符(包括繁体字)进行了编码,新的编码规则成为GBK。在中国大陆使用的计算机系统上,GBK和GB2312就被称为该系统的本地字符集。 比如“中国”的中字在中国大陆的编码是十六进制的D6D0,而在中国台湾的编码是十六进制的A4A4,台湾地区的中文字符编码规则是BIG5(大五码)。 字符编码 ISO将全世界所有的符号都进行了统一编码,称之位UNICODE编码。 “中”这个符号,在全世界的任何角落始终对应的都是一个十六进制数字4E2D。 UNICODE编码字符都占用两个字节,对于ASCII码表示的字符,只是简单的在ASCII码原来占用的一个字节前面,增加一个所有bit都为0的字节。 在相当长时间内,本地系统编码和UNICODE编码共存。 字符编码 ——UTF-8编码 ASCII码字符保持原样,仍然占用一个字节, 其他国家的字符,UTF-8使用两个或三个字节来表示,使用UTF-8编码的文件,通常都要用EF BB BF作为文件开头的三个字节。 字符编码 ——UTF-16编码 UTF-16编码在UNICODE基础上进行了一些细节的扩充,增加了对UNICODE编码没有包括的那些字符的表示方式。 在不同体系结构的计算机系统中,UTF-16编码的UNICODE支付在内存中的字节存储顺序是不同的。 字符编码实例 打印中文字符的UNICODE码 打印中文字符的GB2312码 验证写入到屏幕输出流的中文字符所采用的编码 查看系统的缺省编码 修改系统的缺省编码。 压缩文件读写 GZIPInputStream 、GZIPOutputStream ZIPInputStream 、ZIPOutputStream Case:SimpleGZIPDemo.java Case:SimpleZipDemo.java 2、字节流 ——过滤流:缓冲流 对于BufferedOutputStream,只有缓冲区满时,才会将数据真正送到输出流,但可以使用flush()方法人为地将尚未填满的缓冲区中的数据送出。 public void copy(InputStream in, OutputStream out) throws IOException { out = new BufferedOutputStream(out, 4096); byte[] buf = new byte[4096]; int len = in.read(buf); while (len != -1) { out.write(buf, 0, len); len = in.read(buf); } out.flush(); //最后一次读取的数据可能不到4096字节 } 2、字节流 ——过滤流:数据流 接口DataInput和DataOutput,设计了一种较为高级的数据输入输出方式:除了可处理字节和字节数组外,还可以处理int、float、boolean等基本数据类型,这些数据在文件中的表示方式和它们在内存中的一样,无须转换,如read(), readInt(), readByte() …;write(), writeChar(), writeBoolean()…。此外,还可以用readLine()方法读取一行信息。 2、字节流 ——过滤流:数据流(DataInput) boolean readBoolean() byte readByte() short readShort() char readChar() int readInt() long readLong() double readDouble() float readFloat() int readUnsignedByte() int readUnsignedShort() 2、字节流 ——过滤流:数据流(DataInput) void readFully(byte[] b) 读满字节数组,不同于InputStream.read void readFully(byte[] b, int of
原创力文档


文档评论(0)