您当前的位置: 首页 >  Java

星拱北辰

暂无认证

  • 0浏览

    0关注

    1205博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Java】CMD编译Java源码遇到\ufeff问题的解决方法

星拱北辰 发布时间:2020-02-29 19:33:24 ,浏览量:0

记事本支持保存的四种编码

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

UTF-8文件的CMD编译

我们把一个记事本写的、UTF-8编码的.java文件放在cmd下使用javac命令编译: 在这里插入图片描述

确实乱码,因为人家支持的默认CHCP是936: 在这里插入图片描述

这是简体中文,Unicode(UTF-8)是650001。

CHCP国家(地区)或语言437美国708阿拉伯文(ASMO 708)720阿拉伯文(DOS)850多语言(拉丁文 I)852中欧(DOS) - 斯拉夫语(拉丁文 II)855西里尔文(俄语)857土耳其语860葡萄牙语861冰岛语862希伯来文(DOS)863加拿大 - 法语865日耳曼语866俄语 - 西里尔文(DOS)869现代希腊语874泰文(Windows)932日文(Shift-JIS)936中国 - 简体中文(GB2312)949韩文950繁体中文(Big5)1200Unicode1201Unicode (Big-Endian)1250中欧(Windows)1251西里尔文(Windows)1252西欧(Windows)1253希腊文(Windows)1254土耳其文(Windows)1255希伯来文(Windows)1256阿拉伯文(Windows)1257波罗的海文(Windows)1258越南文(Windows)20866西里尔文(KOI8-R)21866西里尔文(KOI8-U)28592中欧(ISO)28593拉丁文 3 (ISO)28594波罗的海文(ISO)28595西里尔文(ISO)28596阿拉伯文(ISO)28597希腊文(ISO)28598希伯来文(ISO-Visual)38598希伯来文(ISO-Logical)50000用户定义的50001自动选择50220日文(JIS)50221日文(JIS-允许一个字节的片假名)50222日文(JIS-允许一个字节的片假名 - SO/SI)50225韩文(ISO)50932日文(自动选择)50949韩文(自动选择)51932日文(EUC)51949韩文(EUC)52936简体中文(HZ)65001Unicode (UTF-8) 使用-encoding utf8编译

竟不能成功? 在这里插入图片描述

在网上搜了搜\ufeff,意思差不多,都是说到了utf-8与utf-8-sig编码的问题。感兴趣的可以阅读下面的文章,作者在PyCharm使用中遇到了这样的问题,看他是怎么处理的:推荐阅读

但这并不能解决我们的问题。 我在网上搜了cmd、\ufeff、utf-8-sig相关,没有相关的解决方案。

我就试了试把-encoding utf8改成-encoding utf8sig,并不行,似乎cmd并不支持这种编码。

解决办法

如果不幸碰到了,那就换成ANSI或者Unicode吧,我都试过,绝对OK……

或者就用IDE吧……

未解之谜

CMD到底能不能支持utf-8-sig编码呢?能不能处理\ufeff呢? 网上没搜到,如果读者有知道的还请不吝赐教!

关注
打赏
1660750074
查看更多评论
立即登录/注册

微信扫码登录

0.0425s