BinaryWriter 及BinaryReader 在二进制的读与写,做好笔记,以备忘。

                                                                                                                                                     

      

BinaryWriter  BinaryReader 是一个二进制流管理对象,方便我们操作这些二进制数据,值得借鉴,相比我们自己去拼接与遍历要好的多。

    

代码
static void Main()
    {
        
const int arrayLength = 1000;

        
// Create random data to write to the stream.
        byte[] dataArray = new byte[arrayLength];
        
new Random().NextBytes(dataArray);

        BinaryWriter binWriter 
= new BinaryWriter(new MemoryStream());

        
// Write the data to the stream.
        Console.WriteLine("Writing the data.");
        binWriter.Write(dataArray);

        
// Create the reader using the stream from the writer.
        BinaryReader binReader = 
            
new BinaryReader(binWriter.BaseStream);

        
// Set Position to the beginning of the stream. //设置流开始的位置
        binReader.BaseStream.Position = 0;

        
// Read and verify the data. 读取并验证数据,从二进制流中读取。  
        byte[] verifyArray = binReader.ReadBytes(arrayLength);  //从binReader对象当中读取指定长度数据 binReader对象已经被初始化。
        if(verifyArray.Length != arrayLength)
        {
            Console.WriteLine(
"Error writing the data.");
            
return;
        }
        
for(int i = 0; i < arrayLength; i++)
        {
            
if(verifyArray[i] != dataArray[i])
            {
                Console.WriteLine(
"Error writing the data.");
                
return;
            }
        }
        Console.WriteLine(
"The data was written and verified.");
    }

原文地址:https://www.cnblogs.com/chenli0513/p/1871136.html