如何在Scala中将String转换为不同的编码?

gra*_*tur 1 scala utf-8

可能重复:
如何强制jar使用(或运行jvm)utf-8而不是系统的默认编码

我有一堆字符串,我想读作UTF-8.有没有办法在Scala中强制执行此编码,而不传递命令行参数?

例如,我想做类似的事情val utf8EncodedString = new String(myString, "UTF-8").

Kim*_*bel 7

字符串在Scala/Java中没有编码.在内部,它们始终保存为UTF-16,但在使用它们时无关紧要.编码和解码发生在IO类中.您应该查看scala.io.Source对象的文档,其中包含用于创建Sources的工厂方法,该方法将编码作为参数.

  • 嗯,所以我尝试使用`Source.fromBytes(text.toLowerCase.getBytes(),"UTF-8").mkString`将我的文本转换为UTF-8,但这不起作用 - 我可能还是误解了如何使用`Source`.你知道我做错了什么吗?(为了给出一些更多的背景,我正在尝试的是采用中文文本并将其分成单独的汉字.) (3认同)