`

编码 GBK 的不可映射字符

阅读更多
这是因为:由于JDK是国际版的,在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe首先获得我们操作系统默认采用的编码格式,也即在编译java程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放入内存中。然后,javac把转换后的unicode格式的文件进行编译成.class类文件,此时.class文件是UNICODE编码的,它暂放在内存中,紧接着,JDK将此以UNICODE编码的编译后的class文件保存到我们的操作系统中形成我们见到的.class文件。对我们来说,我们最终获得的.class文件是内容以UNICODE编码格式保存的类文件,它内部包含我们源程序中的中文字符串,只不过此时它己经由file.encoding格式转化为UNICODE格式了。当我们不加设置就编译时,相当于使用了参数:javac -encoding gbk XX.java,当然就会出现不兼容的情况。

解决办法是:应该使用-encoding参数指明编码方式:javac -encoding UTF-8 XX.java,这下没警告了,运行也正确了在JCreator 4中设置:菜单:Configure --> Options --> JDK Tools --> Compiler,选中<Default>,然后选Edit,Parameters里面,最前面添加:-encoding UTF-8。

Parameters原来的

默认值为:-classpath "$[ClassPath]" -d "$[OutputPath]" $[ModJavaFiles]

修改后为:-encoding UTF-8 -classpath "$[ClassPath]" -d "$[OutputPath]" $[ModJavaFiles]
分享到:
评论

相关推荐

    IDEA编码GBK不可映射字符解决方法

    解决idea编译代码后报“编码GBk不可映射错误”解决办法

    cxf3.2.0编码GBK的不可映射字符问题

    cxf3.2.0出现编码GBK的不可映射字符问题,这个提供解决方法及直接替换的jar包。

    cxf2.7.18编码GBK的不可映射字符问题

    解决cxf2.7.18出现编码GBK的不可映射字符问题,从服务端或者客户端层面上根本解决。

    ant打包时编码 GBK 的不可映射字符.txt

    ant打包时编码 GBK 的不可映射字符 原因:这个主要是因为我们在写代码的时候加入了一些中文注释,而导致编译时候出现的问题。 解决方式:要处理这个问题,仅仅只需要在 build.xml文件中的调用javac的所有地方加入...

    Java乱码问题

    问题描述:文件名.java:1: 错误: 编码GBK的不可映射字符

    cxf创建客户端出现GBK编码问题jar

    最新cxfjar包,开发过程中遇到字符编码gbk不可映射问题

    cxf创建客户端出现GBK编码问题解决的jar

    cxf在创建客户端出现编码GBK-不可映射字符的编码问题解决的jar

    cxf创建出现GBK编码问题解决的jar

    cxf创建客户端出现GBK编码问题解决的jar 评分: cxf在创建客户端出现编码GBK-不可映射字符的编码问题解决的jar

    CXF3.1.11客户端jar包.rar

    搭建Webservice框架必备的jar包,方便快速搭建,ClientProxyFactoryBean JaxWsDynamicClientFactory 等工具类

    Java常见错误分析文档

    Java常见错误分析Java常见错误分析Java常见错误分析

    rsa-java实例

    /以下p,q,e,m可由 本程序的 参数 p0生成,可任意改变 #define VL 8 // p, q 仅在加密程序中用 DWORD p[VL/2] = {0Xb2ab9d39, 0X8e53d98d, 0X77dd8ec1,0X995283d6}; DWORD q[VL/2] = {0Xc7e37a29, 0X7fb7c168, 0Xea61...

    01------helloServlet.rar

    HelloServlet.java:2: 错误: 编码GBK的不可映射字符 解决:Desktop&gt;javac -encoding UTF-8 HelloServlet.java 原因:使用CMD运行java程序的时候,系统默认的编码格式是gbk。而包含中文字符的代码一般是UNICODE格式...

    ubuntu下使用sublime text时如何完美输入中文

    最近根据使用发现,在ubuntu下,安装sublime Text 3 后,无法使用中文输入的问题。 系统为:ubuntu 64位,安装搜狗输入法linux版 解决方法: 1.下载共享库 ...2.下载好库后,进入目录执行: ...LD_PRELOAD=./libsublime...

    Java编程语言的基础知识作了一个较为全面的汇总-供大家学习研究参考

    错误: 编码GBK的不可映射字符 重要说明:关于数据类型的默认值问题 数据类型划分——浮点形 传统bug问题 数据类型划分——字符型 数据类型划分——布尔型 数据类型划分——字符串型 9、运算符 自增、自减操作 三目...

    AndroidStudio代码达到指定字符长度时自动换行实例

    补充知识:Android Studio Error—Gradle: 错误:编码 GBK 的不可映射字符的 产生原因分析:项目太旧导致的 解决方案:对应项目级别build.gradle最下方添加 tasks.withType(JavaCompile) { options.encoding = UTF-...

    特好用的五笔输入法-供参考

    C3: 实现更方便的符号输入方案, 将字符映射表适时调用, 利用输入法相应的编码或自定编码, 在多行多列的二维表及标签卡间切换可选码. C4: 可以如excel或其它支持 列处理的文本软件一样, 更加方便的修改码表. 码表分成...

    何冬州制用的五笔单字输入法

    C3: 实现更方便的符号输入方案, 将字符映射表适时调用, 利用输入法相应的编码或自定编码, 在多行多列的二维表及标签卡间切换可选码. C4: 可以如excel或其它支持 列处理的文本软件一样, 更加方便的修改码表. 码表分成...

    txt文档阅读器

    //即返回字符串在GBK、UTF-8和ISO8859-1编码下的byte数组表示 //目的在于把m_mbBufEnd改成指向下一行 } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e....

    MySQL 6 绿色精简BAT版 2.24 MB

    为了方便开发,把启动后的默认编码方式设置成为了GBK.可以配合MySQL-Front或者开源软件HeidiSQL来管理数据库. 而配合免费的MySQL管理工具 导航猫免费版(Navicat Lite),可获得不低于SQL Server的易用度, 例如可视化...

Global site tag (gtag.js) - Google Analytics