BinaryReader 二进制文件流操作位置定位的问题

guyehanxinlei 2007-06-06 02:10:14
各位高人,小弟在用BaseStream.Position对文件流位置进行定位时,第一次是准确定位到设定的位置,再定位一次时发现读出来的数据不是正确位置的数据,这是怎么回事,代码如下:
FileStream FileStrm = new FileStream(txtDBpath.Text.Trim(), FileMode.Open, FileAccess.Read);
BinaryReader BryRead = new BinaryReader(FileStrm);

//起始位置设为第66个字节处
BryRead.BaseStream.Position = 66;

//将四十个字节读到bytData数组中
bytData = BryRead.ReadBytes(bytData.Length);

//再读取第98个字节处的数据
FileStrm.Seek(98, SeekOrigin.Current);
bytMark = byte.Parse(BryRead.ReadByte().ToString(), System.Globalization.NumberStyles.HexNumber);

问题就可能出在第二次位置定位时,请各位朋友帮助看一下!谢谢!

...全文
1168 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
guyehanxinlei 2007-06-06
  • 打赏
  • 举报
回复
问题解决,多做了一次转换。
guyehanxinlei 2007-06-06
  • 打赏
  • 举报
回复
SeekOrigin.Begin
试了还是不对啊?急啊
DavidNoWay 2007-06-06
  • 打赏
  • 举报
回复
顶!
Red_angelX 2007-06-06
  • 打赏
  • 举报
回复
SeekOrigin.Begin吧?

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧