Binary File Reading through FileStream : FileStream « File Directory Stream « C# / CSharp Tutorial





using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

public class MainClass {
    public static void Main() {
        int nCols = 16;
        FileStream inStream = new FileStream("c:\\a.txt", FileMode.Open, FileAccess.Read);
        long nBytesToRead = inStream.Length;
        if (nBytesToRead > 65536 / 4)
            nBytesToRead = 65536 / 4;
        int nLines = (int)(nBytesToRead / nCols) + 1;
        string[] lines = new string[nLines];
        int nBytesRead = 0;
        for (int i = 0; i < nLines; i++) {
            StringBuilder nextLine = new StringBuilder();
            nextLine.Capacity = 4 * nCols;
            for (int j = 0; j < nCols; j++) {
                int nextByte = inStream.ReadByte();
                nBytesRead++;
                if (nextByte < 0 || nBytesRead > 65536)
                    break;
                char nextChar = (char)nextByte;
                if (nextChar < 16)
                    nextLine.Append(" x0" + string.Format("{0,1:X}", (int)nextChar));
                else if
                    (char.IsLetterOrDigit(nextChar) || char.IsPunctuation(nextChar))
                    nextLine.Append("  " + nextChar + " ");
                else
                    nextLine.Append(" x" + string.Format("{0,2:X}", (int)nextChar));
            }
        }
        inStream.Close();


    }
}










15.19.FileStream
15.19.1.The FileMode and FileAccess
15.19.2.Open a file with exception handling
15.19.3.Demonstrate random access file
15.19.4.Read every other value using FileSeek
15.19.5.Open an existing file
15.19.6.Read file stream on a per byte basis
15.19.7.Read file stream as an array of bytes
15.19.8.Write data to file through FileStream per byte
15.19.9.Write data to file through FileStream via an array
15.19.10.Reset internal position for a FileStream
15.19.11.Write/read bytes using FileStream
15.19.12.Use FileStream to read a file selected from OpenFileDialog
15.19.13.Use FileStream to read a file byte by byte
15.19.14.Use FileStream to write/read a file byte by byte
15.19.15.Is a stream seekable
15.19.16.Binary File Reading through FileStream
15.19.17.Text File Reading with FileStream
15.19.18.Write byte array with FileStream
15.19.19.using statement and FileStream
15.19.20.Move file pointer to beginning of file