我有一个 132 kb 的文件(你不能说它很大),我正在尝试从 Scala REPL 中读取它,但我无法读取超过 2048 个字符,因为它给了我一个java.nio.charset.MalformedInputException
例外
这些是我采取的步骤:
val it = scala.io.Source.fromFile("docs/categorizer/usig_calles.json") // this is ok
it.take(2048).mkString // this is ok too
it.take(1).mkString // BANG!
java.nio.charset.MalformedInputException: Input length = 1
at java.nio.charset.CoderResult.throwException(CoderResult.java:277)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:338)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
知道有什么问题吗?
--
显然问题是文件不是UTF编码的
我将它保存为 UTF 并且一切正常,我只是在迭代器上发出 mkString 并检索文件的全部内容
奇怪的是,错误只引起了传递前 2048 个字符......