怎么活得当前操作系统默认的字符集?

SAsura 2002-08-19 10:27:37
怎么知道当前操作系统默认的encoding?

例如:
windows98,windows2000,windows2000的dos窗口 Unicode
dos,windows98的dos窗口 gb2312
unix,linux ?
...全文
1105 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxj_2000 2002-08-22
  • 打赏
  • 举报
回复
http://www-900.ibm.com/developerWorks/cn/java/java_chinese/index.shtml

这篇文章说了中文的问题
xiaoxiangyy 2002-08-22
  • 打赏
  • 举报
回复
Properties p = System.getProperties();
p.get( "file.encoding" );
K1933 2002-08-20
  • 打赏
  • 举报
回复
真是太烦过却了,JAVA为什么这么难学。
SAsura 2002-08-19
  • 打赏
  • 举报
回复
编译器上加encoding选项是源文件的格式吧,到了运行的时候应该就不起作用了是不是,String内部表示应该都是unicode,但是getBytes取出来以后好像是按照系统默认的字符集的,但是这个字符集怎么确定
SimonLei 2002-08-19
  • 打赏
  • 举报
回复
gbk是gb2312的超集

一般编码都是用unicode,除非你在编译时加上了encoding选项。
SAsura 2002-08-19
  • 打赏
  • 举报
回复
这里还有这么多东西,该死的sun怎么不在文档里面说,不过我觉得还是不对,照理来说操作系统当前的字符集是unicode,那么下面的语句取出的编码就应该是按照unicode的
"abc".getBytes();
但是实际上取出的编码和gb2312相同,而且gb2312的编码和gbk相同,unicode=unicodeLittle!=UTF8!=UTF16,这到底是怎么回事?字符串到底是按照什么取默认编码的?
zhangkai 2002-08-19
  • 打赏
  • 举报
回复
mark,
以后也许会用到
SimonLei 2002-08-19
  • 打赏
  • 举报
回复
java.util.Properties p = System.getProperties();

System.out.println("-------- listing properties ---------");
Set keys = p.keySet();

for (Iterator iter = new TreeSet (keys).iterator(); iter.hasNext(); ) {
String key = (String) iter.next();
String val = (String) p.get(key);
System.out.println (key + "=" + val);
}
You will find this:
sun.io.unicode.encoding=UnicodeLittle
jessy_winter2000 2002-08-19
  • 打赏
  • 举报
回复
保留

62,614

社区成员

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

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