二进制文件读写是通过BinaryReader和BinaryWriter来执行的。
BinaryReader提供的重要方法:
ReadByte:从当前流中读取一个Byte(本身占1个字节),并使流的当前位置提升 1 个字节。
ReadInt16:从当前流中读取一个Int16(本身占2个字节),并使流的当前位置提升 2 个字节。
ReadInt32:从当前流中读取一个Int32(本身占4个字节),并使流的当前位置提升 4 个字节。
ReadInt64:从当前流中读取一个Int64(本身占8个字节),并使流的当前位置提升 8 个字节。
Read(Byte(),Int32,Int32):从字节数组中的指定点开始,从流中读取指定的字节数。
ReadInt16:从当前流中读取一个Int16(本身占2个字节),并使流的当前位置提升 2 个字节。
ReadInt32:从当前流中读取一个Int32(本身占4个字节),并使流的当前位置提升 4 个字节。
ReadInt64:从当前流中读取一个Int64(本身占8个字节),并使流的当前位置提升 8 个字节。
Read(Byte(),Int32,Int32):从字节数组中的指定点开始,从流中读取指定的字节数。
BinaryWriter提供的重要方法:
Write(Byte):从当前流中读取一个Byte(本身占1个字节),并使流的当前位置前进 1 个字节。
Write(Int16):从当前流中读取一个Int16(本身占2个字节),并使流的当前位置前进 2 个字节。
Write(Int32):从当前流中读取一个Int32(本身占4个字节),并使流的当前位置前进 4 个字节。
Write(Int64):从当前流中读取一个Int64(本身占8个字节),并使流的当前位置前进 8 个字节。
Write(Byte()):将字节数组写入基础流。
Seek:设置当前流中的位置。实际使用时,同FileStream.Seek。
Write(Int16):从当前流中读取一个Int16(本身占2个字节),并使流的当前位置前进 2 个字节。
Write(Int32):从当前流中读取一个Int32(本身占4个字节),并使流的当前位置前进 4 个字节。
Write(Int64):从当前流中读取一个Int64(本身占8个字节),并使流的当前位置前进 8 个字节。
Write(Byte()):将字节数组写入基础流。
Seek:设置当前流中的位置。实际使用时,同FileStream.Seek。
以BinaryReader为例说明读取流的位置:
由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。
学习更多vb.net知识,请参看 vb.net 教程 目录