如何將unicode/utf-8寫入MemoryStore中的文件?將unicode/utf-8數據寫入內存文件
一般情況下我可以做以下
fs := FileSystem workingDirectory.
file := fs/'file.txt'.
file writeStreamDo: [ :stream | stream << '彼得' ].
file contents. "'彼得'"
的stream
有一個MultiByteFileStream
。
然而,當我嘗試做存儲器一樣,我和了錯誤
fs := FileSystem memory.
file := fs/'file.txt'.
file writeStreamDo: [ :stream | stream << '彼得' ].
Error: Improper store into indexable object
因爲stream
有一個普通的WriteStream
。
我試圖通過直接實例化MultiByteFileStream
來解決這個問題,但是這似乎需要真正的文件。
還有別的辦法嗎?
你試圖製作哪種編碼?取決於你可以先得到'ByteArray'編碼你的unicode'String',然後把它發送到'stream'。 –
@LeandroCaniglia內容應該在utf8 –
然後嘗試'file writeStream nextPutAll:'彼得'utf8Encoded'。 –