0
私はScalaを初めて使い、scala.io.Source
クラスを使いたいと思います。しかし、それはChar
で動作することがわかりましたが、Byte
では動作しません。私が混乱していることは、Char
がエンコード/プラットフォームに依存していることです。つまり、UTF-8
または "windows-1251"でエンコードされた文字を使用できます。なぜソースはcharで動作しますか?
windows-1251
は厳密に1バイトエンコーディングです...生のバイトで操作する方法はありますか?
Scalaの 'Char'sはUTF-16であり、プラットフォームに依存しません。 –
@ n.m。さらに悪い。私は文字列windows-1251をエンコードしています。だから 'scala.io.Source'は適用されないのですか? –
ソースは文字指向で、テキストデータ用です。テキストデータを操作したい場合はscala.io.Sourceが良い選択です。バイナリストリームが必要な場合は、javaのInputStreamの使用を検討してください。 –