1
初学者的问题:我在标准命令shell(代码页是850)的Windows 8机器上使用scala 2.11.4。 如果键入“穆勒”在斯卡拉提示符 斯卡拉>“穆勒” RES0:字符串= M缪勒windows shell中的scala默认编码
同样的情况,在我的第一阶试验计划:
import scala.io.StdIn.readLine
object Hello {
def main(args: Array[String]) {
val myname=readLine("What is your name?","ISO-8859-1")
println("Hallo " + myname + "!")
}
}
通过调用它“斯卡拉你好”收益率: 你叫什么名字?Müller Hallo M?ller!
我猜println使用不同的编码作为默认值(顺便说一句,“ISO-8859-1”部分没有改变任何东西)?
你用'UTF-8'编码试过了吗?我无法测试,但在Unix机器上,默认按预期工作。 – 2014-12-27 21:14:38
在启动scala repl之前做'chcp 1252'是做什么的?我猜你没有在cmd shell上启用unicode codepoints。 – 2014-12-28 06:31:00
Scala repl只是在启动时使用任何可用的编码 - 也就是说,它从现有环境中继承这些属性。 – 2014-12-28 06:31:45