改变了字符编码方式为什么没变化?

Pro_Vida 2006-12-03 11:05:53
大家帮我看看下面一段代码,按理说把默认的编码“GBK”改为了“ISO-8859-1”后就会不支持中文输入,如果输入中文那么打印出来的应该是乱码才对,为什么我编译后仍然能打印出中文?
是我对编码的理解错误还是我系统的原因啊?请大家在自己的电脑上编译下,然后告诉我原因啊!谢谢!!
---------------------------------------------------------------------------
/*目的:1、打印输出系统列表
2、根据系统列表改变系统默认的编码方式为“ISO-8859-1”
3、利用新的编码方式输出所输入的信息*/

import java.util.*;
import java.nio.charset.*;
import java.io.*;
public class CharsetTest
{

public static void main(String[] args)
{
Properties pro=System.getProperties();
pro.list(System.out);
int data;
byte[] b=new byte[100];
int i=0;
pro.put("file.encoding", "ISO-8859-1");//改变编码方式
try
{
while((data=System.in.read())!='q')
//当输入“q”时退出
{
b[i]=(byte)data;
i++;
}
}
catch (IOException e)
{

e.printStackTrace();
}
String st=new String(b,0,i);
System.out.println(st);

}

}
...全文
173 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
masse 2006-12-04
  • 打赏
  • 举报
回复
改变file.encoding,能改变IO输入的编码方式?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧