博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mac系统命令行窗口输入javac命令,输出中文乱码得问题
阅读量:5963 次
发布时间:2019-06-19

本文共 886 字,大约阅读时间需要 2 分钟。

查了下,貌似是因为shell窗口使用得编码是utf-8,而javac使用gbk,所以产生乱码,解决方案包括这么一些:

1. 告诉javac程序输出utf-8

javac -J-Dfile.encoding=UTF-8

 

2.  将终端得环境设置成 gbk

打开终端( terminal)窗口,点击桌面左上方的终端(terminal)-->偏好设置(preferences)-->设置-->高级-->字符编码-->中文(GBK) 

 

参考资料1


 

 

java和javac在简体中文的Mac OSX的终端(Terminal.app)环境下,默认是以GBK编码的中文输出各种诸如语法错误,数组访问越界之类的信息。

但是,Mac的终端的默认编码是UTF-8,所以javac和java在未配置的情况下会输出乱码。

解决方法有3个:

1)指定输出的编码为UTF-8

javac -J-Dfile.encoding=UTF-8

2)输出英文

export LC_ALL=en

3)通过iconv转码

javac something|iconv -f GBK -t UTF-8

对我来说,2)是最好的方案。一是可以把这个加入到.profile里,一劳永逸;二是输出为英文的话,可以搜索到更多的相关信息,毕竟英文资料比中文多得多。

另外还看到有人提到可以。这个方法对我来说不太可行,因为我的大部分程序都是以UTF-8输出的。

 

参考资料2


 

 

在MAC OS X 控制台下使用Javac命令编译java程序时,会出现乱码的情况,现提供一种解决办法:

打开终端( terminal)窗口,点击桌面左上方的终端(terminal)-->偏好设置(preferences)-->设置-->高级-->字符编码-->中文(GBK)

注意事项:可以选择左侧一个非默认风格的窗口进行设置,因为默认的字符编码为UTF-8兼容性更好.设置好以后选择你设置风格的窗口运行javac即可.

转载于:https://www.cnblogs.com/code-style/archive/2013/02/20/2919369.html

你可能感兴趣的文章
知道双字节码, 如何获取汉字 - 回复 "pinezhou" 的问题
查看>>
Python高效编程技巧
查看>>
js中var self=this的解释
查看>>
linux的日志服务器关于屏蔽一些关键字的方法
查看>>
事情的两面性
查看>>
只要会营销,shi都能卖出去?
查看>>
sed单行处理命令奇偶行输出
查看>>
VC++深入详解学习笔记1
查看>>
安装配置discuz
查看>>
线程互互斥锁
查看>>
KVM虚拟机&openVSwitch杂记(1)
查看>>
win7下ActiveX注册错误0x80040200解决参考
查看>>
《.NET应用架构设计:原则、模式与实践》新书博客--试读-1.1-正确认识软件架构...
查看>>
2013 Linux领域年终盘点
查看>>
mysql多实例实例化数据库
查看>>
javascript 操作DOM元素样式
查看>>
Android 内存管理 &Memory Leak & OOM 分析
查看>>
HBase 笔记3
查看>>
【Linux】Linux 在线安装yum
查看>>
Atom 编辑器系列视频课程
查看>>