如何在Pharo 1.4中正确解码FileSystemReadStream中的文本文件



在Pharo 1.4中,我打开了一个文本文件上的FileSystemReadStream,并通过aFileSystemReadStream contents asString将其转换为String。

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

由此产生的Pharo字符串在每个文本文件行中有两个换行符和一些奇怪的字符,而不是德语元音变音符,如É、Ö、Ü等。

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

不要在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. 

相关内容

  • 没有找到相关文章

最新更新