ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

IO流的分析

2022-02-22 11:05:24  阅读:123  来源: 互联网

标签:分析 files 读取 IO new 字节 byte out


字符流和字节流

  • 拷贝东西可以用字节流,但读取文本就要用字符流。因为中文和英文的所占字节不同,一个文本中可能包含中英混合,如果用字节流读取文本,会发生读取字节分离(在读取文本的时候是读取到一个byte数组里,但byte数组有一定大小,不能一下子读完,可能出现一个中文字符读取了一半。导致部份乱码),如果不牵涉到读取文本啥的可以用字节流。字节流可以读取任何文件。
  • 关于拷贝和读取的时候,可以借byte数组来当缓冲。java中的String类可以用byte组数创建新的string对象,如图所示
FileInputStream files=null;
        try {
        	 byte[] a=new byte[5];
			 files=new FileInputStream("src/com/ht/io/temple");
			 char onebyte=(char) files.read();
			 System.out.print(onebyte);
			 int readcount;
			 while((readcount=files.read(a))!=-1) {
				 System.out.print(new String(a,0,readcount));
			 }

-ObjectOutputStream和ObjectInputStream可以序列化对象,但对象要实现Serializable接口

SerializeTest.Student a=new SerializeTest.Student("zhangsan");
		ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("serialize"));
		out.writeObject(a);
		out.flush();
		out.close();

标签:分析,files,读取,IO,new,字节,byte,out
来源: https://blog.csdn.net/weixin_45751646/article/details/123063184

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有