带有scala的Euler4-注释中明显的utf8禁止编译
我刚开始和Scala一起努力学习。我通常通过实现前二十个左右的Euler问题来实现这类事情。当我达到4时,事情发生了惊人的转变 虽然它可能不会跳出来,但注释中91到99之间的x实际上是一个unicode x,编码为D7。如果我将其更改为ASCII X,程序将按预期编译和运行。如果我保持原样,程序似乎在运行,但没有输出 从命令行运行显示带有scala的Euler4-注释中明显的utf8禁止编译,scala,utf-8,Scala,Utf 8,我刚开始和Scala一起努力学习。我通常通过实现前二十个左右的Euler问题来实现这类事情。当我达到4时,事情发生了惊人的转变 虽然它可能不会跳出来,但注释中91到99之间的x实际上是一个unicode x,编码为D7。如果我将其更改为ASCII X,程序将按预期编译和运行。如果我保持原样,程序似乎在运行,但没有输出 从命令行运行显示 c:\projects\Euler>scalac -feature euler4.scala error: IO error while decoding
c:\projects\Euler>scalac -feature euler4.scala
error: IO error while decoding euler4.scala with UTF-8
Please try specifying another one using the -encoding option
one error found
对SO的一点研究建议指定编码
c:\projects\Euler>scalac -encoding UTF-8 -feature euler4.scala
error: IO error while decoding euler4.scala with UTF-8
Please try specifying another one using the -encoding option
one error found
我的配置是windows 10和
“欢迎使用Scala 2.12.1(Java HotSpot(TM)64位服务器虚拟机,Java 1.8.0_121)。”您试过看吗?我试着将这个字符添加到一个文件中(当然是在一篇评论中),但它没有破坏任何东西。无法重现这个问题。(Scala 2.12.1)您运行的是哪个版本?如果您要告诉某个程序使用哪种编码来读取您的文件,您应该告诉它您用于保存文件的编码。看来UTF-8是个不错的选择。@jwvh谢谢。我已经在问题中添加了这些信息。VisualStudio选择古老的编码作为某些类型文件的默认编码。要修复此问题,请选择文件»另存为,并下拉“保存”按钮或文件»高级保存选项上的选项。
c:\projects\Euler>scalac -encoding UTF-8 -feature euler4.scala
error: IO error while decoding euler4.scala with UTF-8
Please try specifying another one using the -encoding option
one error found