JAVA之FileOutputStream和FileInputStream关于数据的编码问题(getBytes())
来源:互联网 发布:c语言输出字符串 编辑:程序博客网 时间:2024/05/22 04:26
最近在做的系统和别的模块用socket通讯,在网络上传数据流Stream,再把数据流转成byte[]数组,然后把数组转成String。
大家都对编码比较头疼。下面一个例子,大家仔细看看。自己试一下。
package MyText1;public class test { public static void main(String[] args){ String a="哈哈"; try { byte[] aa = a.getBytes("GB2312"); byte[] ab = a.getBytes("UTF-8"); for (int i = 0; i < aa.length; i++) { System.out.print(aa[i]); } System.out.println(); for (int i = 0; i < ab.length; i++) { System.out.print(ab[i]); } System.out.println(); System.out.println(new String(aa)); System.out.println(new String(aa, 0, aa.length, "GB2312")); System.out.println(new String(ab, "UTF-8")); System.out.println(new String(aa, "UTF-8")); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }}运行结果:
-71-2-71-2
-27-109-120-27-109-120
哈哈
哈哈
哈哈
????
由此看来,如果要是遇见这种需求的话,从什么转到什么不重要。关键是网络的那一头给你发什么,你这边就用什么方式去接收。
比如,一个String,不管它原来是什么编码,你在网络上传的时候,首先把它.getBytes(mode)转成数组,那么,网络的另一头,你接收到的数据流转成byte[]数组后,要new String(byte[],mode)。不用管它在路上怎么个编码方式。
所以说,只要两边一致。网络socket传输就不会出现乱码。
- JAVA之FileOutputStream和FileInputStream关于数据的编码问题(getBytes())
- java开发中关于FileInputStream和FileOutputStream的应用
- 【JAVA的 IO流之FileInputStream和FileOutputStream】
- java字节流之FileInputStream和FileOutputStream一些问题的探讨
- Java FileInputStream和FileOutputStream
- Java FileInputStream 和 FileOutputStream
- Java文件操作之FileInputStream和FileOutputStream
- java中的FileInputStream和FileOutputStream的讲解
- Java的IO流--FileInputStream和FileOutputStream
- Java文件之FileInputStream、FileOutputStream
- java之FileInputStream与FileOutputStream
- Java IO之FileInputStream&FileOutputStream
- Java IO FileInputStream和FileOutputStream
- 关于FileInputStream,FileReader和FileOutputStream,FileWriter区别问题
- 关于FileInputStream和FileOutputStream输入流与输出流问题
- [Java] FileInputStream/FileOutputStream的应用
- FileInputStream和FileOutputStream的使用
- FileOutputStream和FileInputStream的用法
- Multiple of 17(湖南省第六届ACM竞赛题)含有java大数模板
- ireport 换行
- 算法总结系列之五: 基数排序(Radix Sort)
- WinCE6.0开发总结
- U盘量产失败后无法找驱动U盘的解决方法。
- JAVA之FileOutputStream和FileInputStream关于数据的编码问题(getBytes())
- android 音频文件下载
- 什么是CRT函数以及常用的CRT函数
- hadoop副本数设置
- 哈佛训言:谁也不能随随便便成功,它来自彻底的自我管理和毅力
- android SQLiteOpenHelper使用示例
- 构建REST风格的Web Service
- Linux查看系统配置常用命令
- SQLServer2005设置级联删除、级联更新