我写了一个程序但是当我想保存它时,我收到一个错误说:
编码文字时出错。无法使用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
答案 0 :(得分:0)
第13行第40列是字符代码8722.这看起来像减号(代码45)但不是。在第14行第36列还有另一个相同的内容。用普通的减号替换它们,如果没有类似的问题,文件可以保存在1256编码(您的系统默认值)下。很可能你粘贴了代码或至少来自某些非代码来源的评论,例如网站或MS Word文档,这就是那些进入那里的方式。
您可以在编辑器中输入任何Unicode BMP,但在保存时,如果您未指定另一个,则将使用系统默认编码。 1256不支持所有这些字符。您可以使用“文件”>如果绝对必要,“另存为”以保存为另一种编码(但在这种情况下您不想这样做)。