我希望在 fileName 中的x处读取10字节开始并保存到bitLevel中 我写道:
byte[] bitLevel = new byte[10];
using(FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read))
{
fileStream.Read(bitLevel, x,10);
//some code
}
但是bitLevel中没有,我迷路了?
答案 0 :(得分:2)
<强>更新强> 听起来您的程序可能没有找到适合该文件的位置。在打开文件之前尝试添加以下内容以验证文件的完整路径以及文件是否存在。如果出现此问题,请查看项目属性的调试标签下的工作目录。
fileName = Path.GetFullPath(fileName);
System.Diagnostics.Debug.Assert(File.Exists(fileName), "Error: Could not find " + fileName);
读取函数的第二个参数指定数组中将放置读取字节的字节偏移量。它没有指定要读取的流中的偏移量。使用 Seek 功能设置流的读取位置。
using (FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read))
{
fileStream.Seek(x, SeekOrigin.Begin);
fileStream.Read(bitLevel, 0, 10);
//some code
}