0
BinaryReader
でバイナリファイルから文字を読み込むと、charとして読み込めない形式のデータが出てくることがよくあります。私はが投げられる。無効な文字の検出
高価な操作をせずに次の文字を処理しようとすると、例外をスローする代わりに次の文字が例外をスローすることが予想されます。入力はArgumentException
がスローされます
BinaryReader.ReadChar();
?
BinaryReader
でバイナリファイルから文字を読み込むと、charとして読み込めない形式のデータが出てくることがよくあります。私はが投げられる。無効な文字の検出
高価な操作をせずに次の文字を処理しようとすると、例外をスローする代わりに次の文字が例外をスローすることが予想されます。入力はArgumentException
がスローされます
BinaryReader.ReadChar();
?
ああは、ちょうどそれを考え出し:
char next = (char)reader.ReadByte();
if (Char.IsSurrogate(next)) {
return "Non-valid char value";
}
は、よりよい解決策を投稿してお気軽に。
[documentation](https://msdn.microsoft.com/en-us/library/system.io.binaryreader.readchar(v = vs.110).aspx)では、代わりに 'ReadChars'を使用することを提案しています。 – juharr
私は知っていますが、それは単一の文字を読むときに同じ例外を投げていた... – Karlovsky120