(IO)编码与解码---转换流

本文介绍了字符与字节之间的转换过程,即编码与解码的基本原理。重点讲解了InputStreamReader和OutputStreamWriter的作用,以及如何通过它们指定不同的编码表来避免乱码问题。同时,也提到了URL参数的编码与解码操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

字节--->字符:解码  InputStreamReader  字节流通向字符流的桥梁,将字节数据解码为字符

字符--->字节:编码  OutputStreamWriter  字符流通向字节流的桥梁,将字符数据编码为字节

 

如果未指定编码,则使用平台默认的编码。

如,FileWriter没有指定编码的方法,其内部默认使用了平台相关的编码表,将字符转换为字节

FileWriter的父类OutputStreamWriter 就提供了指定编码的方法,

因此要指定编码就用OutputStreamWriter 

 

计算机中的字符最终呈现出来,都是靠查找对应的编码表进行转换的!

所以,编码、解码都离不开编码表,一般使用UTF-8较通用!

 

URLEncoder: 对URL参数中的字符按指定编码表进行编码,如果未指定,则使用平台默认的编码进行处理。

URLDecoder: 对接收到的参数按指定编码表进行解码。

 

使用转换流才能指定编码表,对字符进行编码、解码

 

如果字符出现乱码,肯定是编码与解码时使用的码表不一致造成的!!!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值