当使用BinaryReader
从二进制文件中读取字符时,我经常会遇到格式不正确的数据,这些数据无法作为字符读取。我得到ArgumentException
抛出。
有没有办法让我预测下一个字符何时会抛出异常,而不是试图读取它(这将引发异常)以便能够在没有昂贵操作的情况下处理它?</ p>
BinaryReader.ReadChar();
哪些输入会导致ArgumentException
被抛出?
答案 0 :(得分:0)
char next = (char)reader.ReadByte();
if (Char.IsSurrogate(next)) {
return "Non-valid char value";
}
随意发布更好的解决方案。