java中字节流示例.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OutputStream 和 InputStream 分别为java 中 IO 包整个字节输入/输出流的的主类: public abstract class InputStream extends Object implements Closeable 此抽象类是表示字节输入流的所有类的超类。 需要定义 InputStream 子类的应用程序必须总是提供返回下一个输入字节的方法。 public abstract class OutputStream extends Object implements Closeable, Flushable 此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到某个接收器。 需要定义 OutputStream 子类的应用程序必须始终提供至少一种可写入一个输出字节的方 法。 由上可见,这两个类均为抽象类,必须利用其子类进行实例化。这里,以操作文件为例,对文件进行字节流的IO,所以只需要使用FileOutputStream 和FileInputStream 两个子类即可: public class FileInputStream extends InputStream FileInputStream 从文件系统中的某个文件中获得输入字节。哪些文件可用取决于主机环境。 FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使 用 FileReader。 public class FileOutputStream extends OutputStream 文件输出流是用于将数据写入File 或 FileDescriptor 的输出流。文件是否可用或能否可以被创建取决于基础平台。特别是某些平台一次只允许一个FileOutputStream(或其 他文件写入对象)打开文件进行写入。在这种情况下,如果所涉及的文件已经打开,则此类中的构造方法将失败。 FileOutputStream 用于写入诸如图像数据之类的原始字节的流。要写入字符流,请考虑 使用 FileWriter。操作范例: 1,观察这两个子类的的构造方法可知,进行实例化是需要先进行文件的读取: [java] view plaincopy 1. 1. File f = new File(F:+File.separator+temple.txt); 然后再进行实例化:[java] 然后再进行实例化: [java] view plaincopy 1. OutputStream out = new FileOutputStream(f);InputStream in = new FileIn putStream(f); 这里,有一点需要注意的是: 两种构造方法的区别:FileOutputStream(File file) 其中,用前者进行文件的字节流写入时,不会自动在文件已有内容上进行增加,也就是覆盖文件上一次的内容,而后者则会在文件已有内容上进行增加,不会覆盖以前的内容,比如文件中原始内容为:Sugite 其中,用前者进行文件的字节流写入时,不会自动在文件已有内容上进行增加,也就 是覆盖文件上一次的内容,而后者则会在文件已有内容上进行增加,不会覆盖以前的内容, 比如文件中原始内容为:Sugite ,现在需要写入 good 后者则会变为:Sugitegood。 用前者,内容则会变为:good 用 2,对文件进行写入时,常用两个方法为 voidwrite(byte[] b) 和 voidwrite(byte[] b, int off, int len) 这里以写入“Hello Java!”为例: 由于是以字节形式写入,所以需要先将String 对象转为 byte 对象: [java] view plaincopy 1. 1. String name=Hello Java!;byte b[] = name.getBytes(); 其中,voidwrite(byte[] b) 和 voidwrite(byte[] b, int off, int len)的区别在于:前者是将 b 中所有内容写入文件中,而后者则将 b 中从 off 位置开始的长度为 len 的字节写入文件中: out.write(b); out.write(b);的结果是:Hello Java! out.write(b,1,8);的结果则是:ello Jav 3,若要在写入时进行换行,则需要用\r\n进行此操作 比如: [java] view plaincopy 1. String name=\r\nHello Java! 1. String name=\r\nHello Java!; 这里需要注意的是:\r\n 将会占用两个字节

文档评论(0)

mph + 关注
官方认证
内容提供者

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

认证主体上海谭台科技有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91310115MA7CY11Y3K

1亿VIP精品文档

相关文档