字节流、字符流、对象流、properties文件

这篇博客详细介绍了Java中的流类型,包括字节流、字符流、对象流和Properties文件。字节流用于处理二进制数据,字符流针对文本,InputStreamReader/OutputStreamWriter作为字节流到字符流的转换桥梁。文件字符流提供读写字符文件的便利,缓冲流提高读写效率。对象流实现序列化,序列化ID对于版本一致性至关重要。同时,文章还探讨了如何处理Properties文件。
摘要由CSDN通过智能技术生成

根据流的类型,可分为字节流、字符流、对象流。

关于字节流和字符流:

有stream字眼的就是字节流。有Reader/Writer字眼的就是字符流。两种字眼都有的就是转换流。

缓冲流都要以原来的文件非缓冲流做参数,如字符缓冲流(文件字符流),字节缓冲流(文件字节流)。

而文件流都是以文件或文件路径做参数。如文件字符流(String FilePath),文件字节流(String FilePath)

一、文件字节流

1.写入到文件(出现乱码即需要修改编码)

                     FileOutputStream fos = null;
			try {
	            //写出去,写到文件上(如果文件已存在,则清空再写)
				fos = new FileOutputStream("F:\\test.txt");
				fos.write(97);//a  
				fos.write('s');//as
				fos.write("卑鄙是卑鄙者的通行证".getBytes());//as卑鄙是卑鄙者的通行证
				
				fos.write('的');//写入单个中文字符将会改变文件编码使文件乱码,正确写入中文应为上方法
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} finally {
				if (fos != null) {
					try {
						fos.close();
					} catch (IOException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
				}
			}

追加修改

//jdk1.7之后提供了自动关流的方式
		/**
		 * try(流定义语句){
		 * 
		 * }catch{}
		 */
			try (FileOutputStream fos = new FileOutputStream("F:\\test.txt",true)){
				//后面的参数代表是否追加,默认false(清空再写)
				
				fos.write(98);//在不改动原文件基础上追加b
				
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

2.文件输入流

try(FileInputStream fis &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值