A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘艳伟 中级黑马   /  2012-11-24 21:02  /  1673 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

  我们平时用MyEclipse编写代码时,为了兼容性的需要,一般都会把编码格式配置为UTF-8,比如我们用MyEclipse编写了一个Java类Test.java,MyEclipse的编码格式为UTF-8,在DOS窗口编译时,如下:
  javac -enconding utf-8 Test.java

  如果此时我们需要改动源码,用记事本打开了这个Java类,并且对这个类做了改动,就算我们只敲了一下空格健,或者再把空格删掉,编译时都会出现下面的问题:
  Test.java:1: 错误: 非法字符: \65279

  这是因为记事本的编码格式只有两种(中文GB2312和西欧语言,我用的是WIN7),敲入的空格不是按utf-8编码的,所以无法编译通过,即使我们又将空格删掉了,代码看起来和原先一模一样,还是无法编译通过的,因为源代码只要一变,改动的地方的编码格式即发生了变化。

  此时我们需要采用MyEclipse或是Notepad++将代码的编码格式更改为统一后才能正确编译。

  一般我们用MyEclipse编写程序时,都直接用MyEclipse来运行程序了,不会采用DOS的方式,我之所以在这里提出这个问题,是因为有时我们可能会在没有安装MyEclipse的机器上运行程序,到时如果出现了因编码格式导致无法编译的问题时,希望大家知道该怎么解决。



评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

1 个回复

倒序浏览
黑马吕世成 来自手机 中级黑马 2012-11-25 08:33:25
沙发
谢谢分享!来自: Android客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马