Java中出现“错误: 编码GBK的不可映射字符”的解决方法

我的java文件中出现中文,是这样一个文件:

import java.io.*;
public class Test {
	public static void main(String[] args) {
		String separator = File.separator;
		String filename = "myfile.txt";
		String directory = "mydir1" + separator + "mydir2";
		File f = new File(directory , filename);
		if(f.exists()) {
			System.out.println("文件名:" + f.getAbsolutePath());
			System.out.println("文件大小:" + f.length());
		} else {
			f.getParentFile().mkdirs();
			try {
				f.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
}

在编译时出现错误:

这是因为代码中出现了utf-8字符,解决方案如下:

用notepad打开该java文件,另存为,编码为ANSI

在此编译,没有问题:

时间: 2024-08-15 04:34:51

Java中出现“错误: 编码GBK的不可映射字符”的解决方法的相关文章

maven, install 时候报错“编码 gbk 的不可映射字符”的解决方法

myeclipse maven, install 时候报错"编码 gbk 的不可映射字符" 报错的原因是compiler采用了GBK编码,而源代码设置的是utf8编码导致编译的时候无法正确解析源码,解决方法很简单,在pom的compiler插件配置处加入<encoding>utf8</encoding> 即可,如下: <build>        <plugins>            <plugin>           

有关java编辑改变编码器时出现HelloWorld.java:3: 错误: 编码GBK的不可映射字符 * 瀹冨皢鎵撳嵃瀛楃涓? Hello World

有关java编辑改变编码器时出现HelloWorld.java:3: 错误: 编码GBK的不可映射字符      * 瀹冨皢鎵撳嵃瀛楃涓? Hello World 这个是编码格式的问题,因为java是国际版的所以要改一下 原文地址:https://www.cnblogs.com/whdaichengxu/p/12197960.html

记一个奇怪的编码转换问题,及探讨“错误: 编码GBK的不可映射字符” 的原因

什么情况? 下面的一段简单代码,发现了奇怪的编码问题: String docPath = "姝f枃";// docPath = "正文"; // 注释1System.out.println("default = " + docPath); String docPath1 = new String(docPath.getBytes(), "GBK");System.out.println("GBK = " +

javac编译出现的编码错误: 编码GBK的不可映射字符

在Windows平台下,当Java源代码中包含中文字符时,如果我们利用代码编辑器保存代码时是utf-8编码格式保存,那么我们在用javac编译时会出现“错误:编码GBK的不可映射字符”. 我们在用javac编译时,编译程序首先会获得我们windows操作系统默认采用的编码格式(GBK),这样在从硬盘读取java文件的时候就相当于按GBK格式解码进内存中,而原编码为utf-8,就会发生解码错误,导致无法编译.当我们不加设置就编译时,相当于使用了参数:javac -encoding GBK Stre

javadoc错误: 编码gbk的不可映射字符

在使用Eclipse进行javadoc的导出时,提示“编码 GBK 的不可映射字符”,应该就是中文注释Eclipse不认,需要在调用javadoc.exe的时候传递编码集告诉它采用什么编码去生成javadoc文档. 打开eclipse,project –> Export –> javadoc 一项一项的选你要输出javadoc的项目,最后一步中VM设置行中加入以下代码 -encoding utf-8 -charset utf-8 经过以上操作,输出的html代码不会发生“编码 GBK 的不可映

javadoc生成出现错误“编码 GBK 的不可映射字符”

在使用Eclipse进行javadoc的导出时,提示“编码 GBK 的不可映射字符”,应该就是中文注释Eclipse不认,需要在调用javadoc.exe的时候传递编码集告诉它采用什么编码去生成javadoc文档. 打开eclipse,project –> Export –> javadoc 一项一项的选你要输出javadoc的项目,最后一步中VM设置行中加入以下代码 -encoding utf-8 -charset utf-8 经过以上操作,输出的html代码不会发生“编码 GBK 的不可映

【javac】错误:编码GBK的不可映射字符

错误现象: 由于JDK是国际版的,我们在用javac.exe编译时,编译程序首先会获得我们操作系统默认采用的编码格式(也即在编译java程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放入内存中.然后,javac.exe把转换后的UNICODE格式的文件进行编译成.cl

解决eclipse导出javadoc时的“错误: 编码GBK的不可映射字符”问题(转)

http://blog.csdn.net/psy1100/article/details/51179342 今天要将自己的API接口和MODEL导出来一份java doc参考文档, 但是在导出的时候却遇到了错误,如图: 通过一段查找解决方法后,得到解决方法如下: -encoding UTF-8 -charset UTF-8 将-encoding UTF-8 -charset UTF-8这一段复制到elipse的相应输入框中,如下图: 解决了,顺利导出javadoc.

错误: 编码GBK的不可映射字符

最近在研究JNI,由于只有一个文件,涉及命令行编译,使用notepad++编辑器,然后使用javac编译: 之前的几个文件没有中文的内容,都没有产生错误,这次有中文就产生这样的错误! 解决方案 方案一.指定编码 javac -encoding utf-8 CommonClassLoader.java 方案二.修改文件编码 注意 当文件是utf-8编码时,不能有BOM,否则也会有错误,如下图: