编码文本时出错:无法使用charset windows-1256对文本进行编码

时间:2016-01-23 12:26:22

标签: java class encoding jgrasp

我写了一个程序但是当我想保存它时,我收到一个错误说:

  

编码文字时出错。无法使用charset windows-1256对文本进行编码。第一个坏人物在第13栏第40栏。

我不明白错误是什么。我正在使用jGRASP。这是我的计划:

public class Point {
double x, y;
int counter=0; 

Point (double ex, double why){
x=ex;
y=why; 
counter++; }

public Distance (double x1, double y1) {
/* using Pythagoras c^2 = a^2 + b^2 
 where a is the horizontal distance (x − x1)
 and b is the vertical distance (y − y1)
 and c is the distance */
double a, b, c;
a = Math.pow(x - x1);
b = Math.pow(y - y1);
c = Math.sqrt(a + b);
}

public product (double x1, double y1) {
// using the dot product rule =>  A.B=(a1.b1)+(a2.b2)
double product = (x * y)+(x1 * y1);
}

public void setX (double ex){
x=ex; }

public void setY (double why) {
y=why ; } 

public double getX() {
return x; }

public double getY() {
return y; } 

public int getCounter() {
return counter; } 

} // end of class

1 个答案:

答案 0 :(得分:0)

第13行第40列是字符代码8722.这看起来像减号(代码45)但不是。在第14行第36列还有另一个相同的内容。用普通的减号替换它们,如果没有类似的问题,文件可以保存在1256编码(您的系统默认值)下。很可能你粘贴了代码或至少来自某些非代码来源的评论,例如网站或MS Word文档,这就是那些进入那里的方式。

您可以在编辑器中输入任何Unicode BMP,但在保存时,如果您未指定另一个,则将使用系统默认编码。 1256不支持所有这些字符。您可以使用“文件”>如果绝对必要,“另存为”以保存为另一种编码(但在这种情况下您不想这样做)。