尝试编译 Java 程序时用于编码 Cp1252 的不可映射字符



我尝试用Java制作一个Hello World程序,但得到一个CP1252错误:

import acm.program.*; 
public class test extends Program
{
    public void run() { println(”Hello world!!!”); }
} 

以下是错误:

C:>javac -cp acm.jar test.java
test.java:4: error: unmappable character for encoding Cp1252
public void run() { println(ÔÇ?Hello world!!!ÔÇ?);
                              ^
test.java:4: error: unmappable character for encoding Cp1252
public void run() { println(ÔÇ?Hello world!!!ÔÇ?);
                                               ^
test.java:4: error: ';' expected
public void run() { println(ÔÇ?Hello world!!!ÔÇ?);
                                          ^
test.java:4: error: not a statement
public void run() { println(ÔÇ?Hello world!!!ÔÇ?);
                                             ^
test.java:5: error: reached end of file while parsing
}
 ^
5 errors`

简单的test.java程序显然是正确的,我不知道问题是什么。

如何解决 CP1252 编码错误?

问题是您使用的是智能引号而不是实际的引号字符。

下面是代码的"固定"版本:

import acm.program.*; 
public class test extends Program
{
    public void run() { println("Hello world!!!"); }
} 

请注意"之间的区别。

要解决此问题(我认为这取决于您的键盘(,您应该使用紧邻Enter键左侧的"字符。

最新更新