【发布时间】:2011-12-02 21:38:08
【问题描述】:
当我运行我的程序时,下面的代码出现了错误:
///////////////////////////// Read in the selected //////////////
BinaryReader br2 = new BinaryReader(File.OpenRead(directoryToSearch2),
System.Text.Encoding.BigEndianUnicode);
var Hexbytes = new List<string>();
///////////////////////////// Read in offset ////////////////
for (int a = 0x12 ; a <= 0x26; a++)
{
br.BaseStream.Position = a;
Hexbytes.Add(br.ReadByte().ToString("X2"));
}
调试器不喜欢的主线是br.BaseStream.Position = a;。
它指出“NullReferenceException 未处理”和“对象引用未设置为对象的实例。”
有什么想法吗?
【问题讨论】:
-
您的代码部分中定义了 br 的位置
-
我们能看到 br 的定义吗?还是你的意思是 br2?
-
我的意思是 br2 ......直到你指出它意味着 br2 我才意识到......我觉得很愚蠢,特别是我在这里坐了一个多小时 :( ...我想这就是你因为错误地命名变量而得到的......非常感谢你,伙计
-
br.ReadByte()不会将位置增加一个字节吗?您不必每次都更改位置。
标签: c# nullreferenceexception binaryreader