6

在 Pharo 1.4 中,我在一个文本文件上打开了一个 FileSystemReadStream,并通过aFileSystemReadStream contents asString.

我的文本文件是 UTF8 编码的,并且有那些 Windows (CR LF) 换行符。

生成的 Pharo 字符串每个文本文件行有两个换行符和一些奇怪的字符,而不是像 Ä、Ö、Ü 等德语变音符号。

如何正确解码 Pharo 中的文本文件?

4

1 回答 1

9

不要在 1.4 中使用 FileSystemReadStreams,它们不完整且有缺陷;)。请改用 FileStream。

multiByteFileStream := FileStream fileNamed: '/foo/bar.txt'.
multiByteFileStream contents.

它将返回一个MultiByteFileStream您可以设置行尾约定和编码的位置:

multiByteFileStream 
    "possible values are: #cr #lf #crlf"
    lineEndConvention: #cr;
    "set a specific converter, see subclasses of TextConverter"
    converter: UTF8TextConverter new. 
于 2012-07-31T12:04:48.160 回答