MemoryStoreのファイルにunicode/utf-8を書き込むにはどうすればよいですか?unicode/utf-8データをメモリファイルに書き込む
通常、私はちょうど
fs := FileSystem workingDirectory.
file := fs/'file.txt'.
file writeStreamDo: [ :stream | stream << '彼得' ].
file contents. "'彼得'"
stream
次の操作を行うことができMultiByteFileStream
があります。
しかし、私は普通のWriteStream
があるstream
ので、私とエラー
fs := FileSystem memory.
file := fs/'file.txt'.
file writeStreamDo: [ :stream | stream << '彼得' ].
Error: Improper store into indexable object
とまで、メモリストレージに同じことをしようとします。
私は実際にファイルを必要としているようですが、MultiByteFileStream
を直接インスタンス化して回避しようとしました。
別の方法がありますか?ここで
生成しようとしているエンコードは何ですか?それに応じて、まずあなたのユニコード 'String'をエンコードした' ByteArray'を取得し、それを 'stream'に送ります。 –
@LeandroCaniglia内容はutf8である必要があります –
次に 'file writeStream nextPutAll: '彼が' utf8Encoded'を試してください。 –