Move internal position for a BinaryWriter in CSharp

Description

The following code shows how to move internal position for a BinaryWriter.

Example


/*from  ww w .java 2  s . c o m*/
using System;
using System.IO;

public class MainClass
{
    public static int Main(string[] args)
    {
    Console.WriteLine("***** Creating a file and writing binary data *****");
    FileStream myFStream = new FileStream("temp.dat", FileMode.OpenOrCreate,FileAccess.ReadWrite);
    
    BinaryWriter binWrit = new BinaryWriter(myFStream);
    binWrit.Write("Hello as binary info...");
    
    int myInt = 9;
    float myFloat = 9.8F;
    bool myBool = false;
    char[] myCharArray = {'H', 'e', 'l', 'l', 'o'};
    
    binWrit.Write(myInt);
    binWrit.Write(myFloat);
    binWrit.Write(myBool);
    binWrit.Write(myCharArray);
      
      binWrit.BaseStream.Position = 0;

    Console.WriteLine("Reading binary data...");
    BinaryReader binRead = new BinaryReader(myFStream);
    int temp = 0;
    while(binRead.PeekChar() != -1)
    {
      Console.Write(binRead.ReadByte());  
      temp = temp + 1;
      if(temp ==  5)
      {
        temp = 0;
        Console.WriteLine();
      }
    }

    binWrit.Close();
    binRead.Close();
    myFStream.Close();

        return 0;
    }
}

The code above generates the following result.





















Home »
  C# Tutorial »
    IO »




File Attribute
File Security
Directory Attribute
Directory Recursive
Binary File
Text Field
Buffered IO
Create Copy Delete Move
CSV
Drive
File System Watcher
Isolated Storage
MemoryStream
Serialize
Zip