`
ylzyd12345
  • 浏览: 118457 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
博客专栏
713488f4-d0a9-3f35-997f-199fb0cb3563
玩懂Log,打开Andro...
浏览量:10147
社区版块
存档分类
最新评论

Eclipse控制台中输入中文保存到文件中,字符编码转换测试

阅读更多

 

Eclipse:代码编码格式UTF-8;控制台编码格式GBK

对“你好”编码解码

 

 

 

Eclipse:代码编码格式UTF-8;控制台编码格式UTF-8

对“你好”编码解码

public class EncodeDemo {
	public static void main(String[] args) throws IOException{
		String s = "你好";
		byte[] b1 = s.getBytes("utf-8");
		System.out.println(Arrays.toString(b1));
		String s1 = new String(b1, "iso-8859-1");
		System.out.println(s1);
	}
}
 

 

-----------------------------------------------------------------------------------------

编码测试: win7中文操作系统,Eclipse工程编码是UTF-8,Console是UTF-8

从eclipse的console中输入中文“你好”,保存在硬盘中txt格式,用记事本打开结果如下:

 

 

 

结论:


in: 默认编码是UTF-8

out:默认编码是UTF-8  


要想记事本打开正常:设置out编码为GBK
注意:但是再读取到Eclipse控制台,正常显示出来,不需要设置编码为GBK。

 

public static void readIn() throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in,"UTF-8"));//设置控制台读取编码
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\a.txt"),"UTF-8"));//设置写入 txt编码
		String s = null;
		while ((s = br.readLine()) != null) {
			if (s.equals("over")) {
				break;
			}
			bw.write(s);
			bw.newLine();
		}
		bw.flush();
		br.close();
		bw.close();
	}
  • 大小: 83.4 KB
  • 大小: 34.7 KB
  • 大小: 35.2 KB
1
0
分享到:
评论
2 楼 ylzyd12345 2012-10-17  
wangxiaolongbob 写道
我有不同意见,我认为作者一开始的2幅图把编码和解码搞反了。
我认为:
把“字符”转化成“字节”叫编码
把“字节”转化成“字符”叫解码

所以:
public class EncodeDemo {
public static void main(String[] args) throws IOException{
String s = "你好";
byte[] b1 = s.getBytes("utf-8");  //编码过程
System.out.println(Arrays.toString(b1));
String s1 = new String(b1, "iso-8859-1");//解码过程
System.out.println(s1);
}
}

而我按照上述表格运行,发现作者把解码和编码弄反了,请问,作者同意我吗?
http://blog.csdn.net/llyzq/article/details/2476685这是别人写的博客。


好久没来javaeye了。谢谢!你说的对。
1 楼 wangxiaolongbob 2012-09-20  
我有不同意见,我认为作者一开始的2幅图把编码和解码搞反了。
我认为:
把“字符”转化成“字节”叫编码
把“字节”转化成“字符”叫解码

所以:
public class EncodeDemo {
public static void main(String[] args) throws IOException{
String s = "你好";
byte[] b1 = s.getBytes("utf-8");  //编码过程
System.out.println(Arrays.toString(b1));
String s1 = new String(b1, "iso-8859-1");//解码过程
System.out.println(s1);
}
}

而我按照上述表格运行,发现作者把解码和编码弄反了,请问,作者同意我吗?
http://blog.csdn.net/llyzq/article/details/2476685这是别人写的博客。

相关推荐

    java文件编码GBK转utf8完美解决方案

    idea、Eclipse等项目导入.java文件中文乱码完美解决方案:文件夹下所有GBK编码的.java一键转为utf-8,操作方式:将GBK2UTF8.jar文件考到需要转码项目目录,在当前位置运行控制台,输入命令java -jar GBK2UTF8.jar,...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例010 在Eclipse项目中编程输出字符表情 15 实例011 为Eclipse添加新的JDK环境 17 实例012 设置Eclipse中文API提示信息 18 实例013 为项目添加类库 20 实例014 使当前项目依赖另一个项目 21 1.3 界面设计器 22 ...

    java源码包2

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    学通Java的24堂课

    1.3.2 保存代码为源代码文件 15 1.3.3 编译并运行java文件 16 1.4 照猫画虎——基本功训练 16 1.4.1 基本功训练1——更换java_home环境变量 16 1.4.2 基本功训练2——提取path变量值创建新环境变量 17 1.4.3 ...

    JAVA上百实例源码以及开源项目

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    java源码包---java 源码 大量 实例

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    java源码包3

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    java源码包4

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    JAVA上百实例源码以及开源项目源代码

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    9.2.6 在字符串中查找子字符串或字符 226 9.2.7 替换字符串中的内容 226 9.2.8 String对象——磐石刻字 227 9.3 String类的最佳拍档——StringBuffer类 227 9.3.1 StringBuffer:专业操纵字符 228 9.3.2 String...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    9.2.6 在字符串中查找子字符串或字符 226 9.2.7 替换字符串中的内容 226 9.2.8 String对象——磐石刻字 227 9.3 String类的最佳拍档——StringBuffer类 227 9.3.1 StringBuffer:专业操纵字符 228 9.3.2 String...

    精通ANDROID 3(中文版)1/2

    24.1 Android中的文本到语音转换  24.2 使用语段跟踪语音  24.3 使用音频文件代替话音  24.4 TTS引擎的高级功能  24.4.1 设置音频流  24.4.2 使用耳标  24.4.3 播放静音  24.4.4 选择不同的文本到...

    fckedit编辑器

    然后将FCKeditor-2.3.zip(java)压缩包中\web\WEB-INF\lib\目录下的两个jar文件拷到项目的\WEB-INF\ lib\目录下把其中的src目录下的FCKeditor.tld文件copy到TestFCKedit/WEB-INF/下 4.合并web.xml: 将FCKeditor-...

    精通Android 3 (中文版)2/2

    24.1 Android中的文本到语音转换  24.2 使用语段跟踪语音  24.3 使用音频文件代替话音  24.4 TTS引擎的高级功能  24.4.1 设置音频流  24.4.2 使用耳标  24.4.3 播放静音  24.4.4 选择不同的文本到...

Global site tag (gtag.js) - Google Analytics