Notepad++关于不同编码格式(UTF-8和GBK)导致Dos命令Javac编译报错的解决方法

问题背景

初学Java时我们会用笔记本(笔者是Notepad++)编写Hello World进行输出,但是在做这项工作的时候有时会遇到一些小麻烦。
本文讲解关于编译时编码格式不相容的一个小案例。

首先使用NotePad++配合Cmd命令行进行编码和执行:

  1. 编码
//这里是Java快速入门的代码……
//相关说明:
//1、public class Hello——>表示Hello是一个类,一个Public的共有类。
//2、Hello{}表示一个类的开始和结束。
//3、public static void main(String[] args)——>表示mian是一个主方法,即我们程序的入口。
//4、mina(){}——>表示方法的开始和结束。
//5、System.out.println("Hello,World!");——>表示输出"Hello,World!"到屏幕/控制台。
//6、";"——>表示语句的结束。
public class Hello{
	//mian代表这里是一个主方法。
	public static void main(String[] args){
		System.out.println("Hello,World!");
	}
	
}
  1. 编译:

这里使用Dos命令行进行编译的时候,出现了一个编码格式不相容的Bug:

请添加图片描述

出错原因:

此处的Hello.java编码格式为UTF-8:

请添加图片描述

而Cmd命令行中的编码格式为GBK格式:

请添加图片描述

两者不相容。

解决方法:

  1. )使用Notepad++中自带的修改编码格式的功能(可能存在无效的情况):

请添加图片描述

具体步骤:

(1.)修改源文件为ANSI:

请添加图片描述

(2.) 修改为“编码字符集”中的“中文”——>“GB2312(简体中文)

请添加图片描述

(3.) 确认修改

请添加图片描述

(4.) 重新编译,可以通过:

请添加图片描述

  1. 使用Javac encoding

使用Javac encoding UTF-8强制转换成对应的编码格式:

使用强制转换命令行:Javac -enconding XXX(格式) XXX.java(文件名)

请添加图片描述

路漫漫其修远兮,愿君上下而求索。

《参考文献》

《【零基础 快速学Java】韩顺平 零基础30天学会Java》

《CMD运行JAVA出现编码GBK的不可映射字符处理方法》

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值