<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FFile_Stream%2FBinary_Read_Write</id>
		<title>Csharp/C Sharp/File Stream/Binary Read Write - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FFile_Stream%2FBinary_Read_Write"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/File_Stream/Binary_Read_Write&amp;action=history"/>
		<updated>2026-04-29T23:18:37Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/File_Stream/Binary_Read_Write&amp;diff=1332&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/File_Stream/Binary_Read_Write&amp;diff=1332&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:19Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/File_Stream/Binary_Read_Write&amp;diff=1333&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/File_Stream/Binary_Read_Write&amp;diff=1333&amp;oldid=prev"/>
				<updated>2010-05-26T11:45:43Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==BinaryWriter and BinaryReader classes for the writing and reading of primitive types==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
public class Binary {&lt;br /&gt;
  public static void Main(string [] args) {&lt;br /&gt;
    BinaryWriter output = new BinaryWriter(new FileStream(&amp;quot;test.dat&amp;quot;,FileMode.Create));&lt;br /&gt;
    &lt;br /&gt;
    output.Write(1);&lt;br /&gt;
    &lt;br /&gt;
    output.Write(0.01);&lt;br /&gt;
   &lt;br /&gt;
    output.Close();&lt;br /&gt;
    BinaryReader input = new BinaryReader(new FileStream(&amp;quot;test.dat&amp;quot;,FileMode.Open));&lt;br /&gt;
    Console.WriteLine(&amp;quot;{0} &amp;quot;, input.ReadInt32());&lt;br /&gt;
    Console.WriteLine(&amp;quot;{0:F1} &amp;quot;, input.ReadDouble());&lt;br /&gt;
    input.Close();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Binary Writer Reader==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.IO;&lt;br /&gt;
class Program {&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
        FileInfo f = new FileInfo(&amp;quot;BinFile.dat&amp;quot;);&lt;br /&gt;
        BinaryWriter bw = new BinaryWriter(f.OpenWrite());&lt;br /&gt;
        Console.WriteLine(&amp;quot;Base stream is: {0}&amp;quot;, bw.BaseStream);&lt;br /&gt;
        double aDouble = 1234.67;&lt;br /&gt;
        int anInt = 34567;&lt;br /&gt;
        char[] aCharArray = { &amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot; };&lt;br /&gt;
        bw.Write(aDouble);&lt;br /&gt;
        bw.Write(anInt);&lt;br /&gt;
        bw.Write(aCharArray);&lt;br /&gt;
        bw.Close();&lt;br /&gt;
        BinaryReader br = new BinaryReader(f.OpenRead());&lt;br /&gt;
        int temp = 0;&lt;br /&gt;
        while (br.PeekChar() != -1) {&lt;br /&gt;
            Console.Write(&amp;quot;{0,7:x} &amp;quot;, br.ReadByte());&lt;br /&gt;
            if (++temp == 4) {&lt;br /&gt;
                Console.WriteLine();&lt;br /&gt;
                temp = 0;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Creating a sequential-access file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
   using System;&lt;br /&gt;
   using System.Data;&lt;br /&gt;
   using System.IO;&lt;br /&gt;
   using System.Runtime.Serialization.Formatters.Binary;&lt;br /&gt;
   using System.Runtime.Serialization;&lt;br /&gt;
   public class CreateFile {&lt;br /&gt;
      static void Main() {&lt;br /&gt;
         BinaryFormatter formatter = new BinaryFormatter();&lt;br /&gt;
         FileStream output = new FileStream( &amp;quot;test.dat&amp;quot;,FileMode.OpenOrCreate, FileAccess.Write );&lt;br /&gt;
         Record record = new Record();&lt;br /&gt;
         record.Account = 1234;&lt;br /&gt;
         record.FirstName = &amp;quot;FirstName&amp;quot;;&lt;br /&gt;
         record.LastName = &amp;quot;LastName&amp;quot;;&lt;br /&gt;
         record.Balance = 1234.345;&lt;br /&gt;
         formatter.Serialize( output, record );&lt;br /&gt;
         output.Close();&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   [Serializable]&lt;br /&gt;
   public class Record{&lt;br /&gt;
      public int Account;&lt;br /&gt;
      public String FirstName;&lt;br /&gt;
      public String LastName;&lt;br /&gt;
      public double Balance;&lt;br /&gt;
   }&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==File pointer move and read binary file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Text;&lt;br /&gt;
class Class1{&lt;br /&gt;
  static void Main(string[] args)  {&lt;br /&gt;
         byte[] byData = new byte[100];&lt;br /&gt;
         char[] charData = new Char[100];&lt;br /&gt;
         try {&lt;br /&gt;
            FileStream aFile = new FileStream(&amp;quot;practice.txt&amp;quot;,FileMode.Open);&lt;br /&gt;
            aFile.Seek(55,SeekOrigin.Begin);&lt;br /&gt;
            aFile.Read(byData,0,100);&lt;br /&gt;
         }&lt;br /&gt;
         catch(IOException e)&lt;br /&gt;
         {&lt;br /&gt;
            Console.WriteLine(&amp;quot;An IO exception has been thrown!&amp;quot;);&lt;br /&gt;
            Console.WriteLine(e.ToString());&lt;br /&gt;
            Console.ReadLine();&lt;br /&gt;
            return;&lt;br /&gt;
         }&lt;br /&gt;
         Decoder d = Encoding.UTF8.GetDecoder();&lt;br /&gt;
         d.GetChars(byData, 0, byData.Length, charData, 0);&lt;br /&gt;
         Console.WriteLine(charData);&lt;br /&gt;
         return;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==new BinaryReader(stream)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static byte[] DecimalToByteArray (decimal src){&lt;br /&gt;
        using (MemoryStream stream = new MemoryStream()) {&lt;br /&gt;
           using (BinaryWriter writer = new BinaryWriter(stream)){&lt;br /&gt;
               writer.Write(src);&lt;br /&gt;
               return stream.ToArray();&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public static decimal ByteArrayToDecimal (byte[] src){&lt;br /&gt;
        using (MemoryStream stream = new MemoryStream(src)){&lt;br /&gt;
           using (BinaryReader reader = new BinaryReader(stream)){&lt;br /&gt;
              return reader.ReadDecimal();&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        byte[] b = null;&lt;br /&gt;
        b = BitConverter.GetBytes(true);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(BitConverter.ToBoolean(b, 0));&lt;br /&gt;
        b = BitConverter.GetBytes(3678);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(BitConverter.ToInt32(b, 0));&lt;br /&gt;
        b = DecimalToByteArray(285998345545.563846696m);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(ByteArrayToDecimal(b));&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
}    &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==new BinaryWriter(stream) and Write method==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static byte[] DecimalToByteArray (decimal src){&lt;br /&gt;
        using (MemoryStream stream = new MemoryStream()) {&lt;br /&gt;
           using (BinaryWriter writer = new BinaryWriter(stream)){&lt;br /&gt;
               writer.Write(src);&lt;br /&gt;
               return stream.ToArray();&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public static decimal ByteArrayToDecimal (byte[] src){&lt;br /&gt;
        using (MemoryStream stream = new MemoryStream(src)){&lt;br /&gt;
           using (BinaryReader reader = new BinaryReader(stream)){&lt;br /&gt;
              return reader.ReadDecimal();&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        byte[] b = null;&lt;br /&gt;
        b = BitConverter.GetBytes(true);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(BitConverter.ToBoolean(b, 0));&lt;br /&gt;
        b = BitConverter.GetBytes(3678);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(BitConverter.ToInt32(b, 0));&lt;br /&gt;
        b = DecimalToByteArray(12345678.123456m);&lt;br /&gt;
        Console.WriteLine(BitConverter.ToString(b));&lt;br /&gt;
        Console.WriteLine(ByteArrayToDecimal(b));&lt;br /&gt;
    }&lt;br /&gt;
}    &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Read and Write a Binary File==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
public class BinaryFileTest {&lt;br /&gt;
    private static void Main() {&lt;br /&gt;
        FileStream fs = new FileStream(&amp;quot;test.dat&amp;quot;, FileMode.Create);&lt;br /&gt;
        BinaryWriter w = new BinaryWriter(fs);&lt;br /&gt;
        w.Write(1.2M);&lt;br /&gt;
        w.Write(&amp;quot;string&amp;quot;);&lt;br /&gt;
        w.Write(&amp;quot;string 2&amp;quot;);&lt;br /&gt;
        w.Write(&amp;quot;!&amp;quot;);&lt;br /&gt;
        w.Flush();&lt;br /&gt;
        w.Close();&lt;br /&gt;
        fs.Close();&lt;br /&gt;
        fs = new FileStream(&amp;quot;test.dat&amp;quot;, FileMode.Open);&lt;br /&gt;
        StreamReader sr = new StreamReader(fs);&lt;br /&gt;
        Console.WriteLine(sr.ReadToEnd());&lt;br /&gt;
        fs.Position = 0;&lt;br /&gt;
        BinaryReader br = new BinaryReader(fs);&lt;br /&gt;
        Console.WriteLine(br.ReadDecimal());&lt;br /&gt;
        Console.WriteLine(br.ReadString());&lt;br /&gt;
        Console.WriteLine(br.ReadString());&lt;br /&gt;
        Console.WriteLine(br.ReadChar());&lt;br /&gt;
        fs.Close();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Reading a sequential-access file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
   using System;&lt;br /&gt;
   using System.Data;&lt;br /&gt;
   using System.IO;&lt;br /&gt;
   using System.Runtime.Serialization.Formatters.Binary;&lt;br /&gt;
   using System.Runtime.Serialization;&lt;br /&gt;
   public class CreateFile {&lt;br /&gt;
      static void Main() {&lt;br /&gt;
         BinaryFormatter formatter = new BinaryFormatter();&lt;br /&gt;
         FileStream output = new FileStream( &amp;quot;test.dat&amp;quot;,FileMode.OpenOrCreate, FileAccess.Write );&lt;br /&gt;
         Record record = new Record();&lt;br /&gt;
         record.Account = 1234;&lt;br /&gt;
         record.FirstName = &amp;quot;FirstName&amp;quot;;&lt;br /&gt;
         record.LastName = &amp;quot;LastName&amp;quot;;&lt;br /&gt;
         record.Balance = 1234.345;&lt;br /&gt;
         formatter.Serialize( output, record );&lt;br /&gt;
         output.Close();&lt;br /&gt;
      &lt;br /&gt;
      &lt;br /&gt;
         BinaryFormatter reader = new BinaryFormatter();&lt;br /&gt;
         FileStream input = new FileStream( &amp;quot;test.dat&amp;quot;, FileMode.Open, FileAccess.Read );&lt;br /&gt;
         Record record1 =( Record )reader.Deserialize( input );&lt;br /&gt;
         &lt;br /&gt;
         Console.WriteLine(record1.FirstName);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
   [Serializable]&lt;br /&gt;
   public class Record{&lt;br /&gt;
      public int Account;&lt;br /&gt;
      public String FirstName;&lt;br /&gt;
      public String LastName;&lt;br /&gt;
      public double Balance;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Read the data from a file and desiralize it==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * C# Programmers Pocket Consultant&lt;br /&gt;
 * Author: Gregory S. MacBeth&lt;br /&gt;
 * Email: gmacbeth@comporium.net&lt;br /&gt;
 * Create Date: June 27, 2003&lt;br /&gt;
 * Last Modified Date:&lt;br /&gt;
 * Version: 1&lt;br /&gt;
 */&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Runtime.Serialization.Formatters.Binary;&lt;br /&gt;
namespace Client.Chapter_11___File_and_Streams&lt;br /&gt;
{&lt;br /&gt;
  public class Class1Chapter_11___File_and_Streams {&lt;br /&gt;
    [STAThread]&lt;br /&gt;
    static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
      Point p1 = new Point();&lt;br /&gt;
      p1.xpoint = 0x1111;&lt;br /&gt;
      p1.ypoint = 0x2222;&lt;br /&gt;
      // Opens a file and serializes the object into it.&lt;br /&gt;
      Stream stream = File.Open(&amp;quot;onepoint.bin&amp;quot;, FileMode.Create);&lt;br /&gt;
      BinaryFormatter bformatter = new BinaryFormatter();&lt;br /&gt;
      bformatter.Serialize(stream, p1);&lt;br /&gt;
      stream.Close();&lt;br /&gt;
      //Read the data from a file and desiralize it&lt;br /&gt;
      Stream openStream = File.Open(&amp;quot;onepoint.bin&amp;quot;, FileMode.Open);&lt;br /&gt;
      Point desierializedPoint = new Point();&lt;br /&gt;
      desierializedPoint = (Point)bformatter.Deserialize(openStream);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  [Serializable()]&lt;br /&gt;
  class Point&lt;br /&gt;
  {&lt;br /&gt;
    public int xpoint;&lt;br /&gt;
    public int ypoint;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==StreamWriter and BinaryWriter==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
class BinReadWriteApp&lt;br /&gt;
{&lt;br /&gt;
    static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
        Stream s = new FileStream(&amp;quot;Foo.txt&amp;quot;, FileMode.Create);&lt;br /&gt;
        StreamWriter w = new StreamWriter(s);&lt;br /&gt;
        w.Write(&amp;quot;Hello World &amp;quot;);&lt;br /&gt;
        w.Write(123);&lt;br /&gt;
        w.Write(&amp;quot; &amp;quot;);&lt;br /&gt;
        w.Write(45.67);&lt;br /&gt;
        w.Close();&lt;br /&gt;
        s.Close();&lt;br /&gt;
   &lt;br /&gt;
        Stream t = new FileStream(&amp;quot;Bar.dat&amp;quot;, FileMode.Create);&lt;br /&gt;
        BinaryWriter b = new BinaryWriter(t);&lt;br /&gt;
        b.Write(&amp;quot;Hello World &amp;quot;);&lt;br /&gt;
        b.Write(123);&lt;br /&gt;
        b.Write(&amp;quot; &amp;quot;);&lt;br /&gt;
        b.Write(45.67);&lt;br /&gt;
        b.Close();&lt;br /&gt;
        t.Close();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Use BinaryReader and BinaryWriter to implement     a simple inventory program==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
C#: The Complete Reference &lt;br /&gt;
by Herbert Schildt &lt;br /&gt;
Publisher: Osborne/McGraw-Hill (March 8, 2002)&lt;br /&gt;
ISBN: 0072134852&lt;br /&gt;
*/&lt;br /&gt;
/* Use BinaryReader and BinaryWriter to implement &lt;br /&gt;
   a simple inventory program. */ &lt;br /&gt;
 &lt;br /&gt;
using System; &lt;br /&gt;
using System.IO;  &lt;br /&gt;
 &lt;br /&gt;
public class Inventory { &lt;br /&gt;
  public static void Main() { &lt;br /&gt;
    BinaryWriter dataOut; &lt;br /&gt;
    BinaryReader dataIn; &lt;br /&gt;
 &lt;br /&gt;
    string item; // name of item &lt;br /&gt;
    int onhand;  // number on hand &lt;br /&gt;
    double cost; // cost &lt;br /&gt;
 &lt;br /&gt;
    try { &lt;br /&gt;
      dataOut = new &lt;br /&gt;
        BinaryWriter(new FileStream(&amp;quot;inventory.dat&amp;quot;, &lt;br /&gt;
                                    FileMode.Create)); &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nCannot open file.&amp;quot;); &lt;br /&gt;
      return; &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    // Write some inventory data to the file. &lt;br /&gt;
    try { &lt;br /&gt;
      dataOut.Write(&amp;quot;Hammers&amp;quot;);  &lt;br /&gt;
      dataOut.Write(10); &lt;br /&gt;
      dataOut.Write(3.95); &lt;br /&gt;
 &lt;br /&gt;
      dataOut.Write(&amp;quot;Screwdrivers&amp;quot;);  &lt;br /&gt;
      dataOut.Write(18); &lt;br /&gt;
      dataOut.Write(1.50); &lt;br /&gt;
 &lt;br /&gt;
      dataOut.Write(&amp;quot;Pliers&amp;quot;);  &lt;br /&gt;
      dataOut.Write(5); &lt;br /&gt;
      dataOut.Write(4.95); &lt;br /&gt;
 &lt;br /&gt;
      dataOut.Write(&amp;quot;Saws&amp;quot;);  &lt;br /&gt;
      dataOut.Write(8); &lt;br /&gt;
      dataOut.Write(8.95); &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nWrite error.&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    dataOut.Close(); &lt;br /&gt;
 &lt;br /&gt;
    Console.WriteLine(); &lt;br /&gt;
 &lt;br /&gt;
    // Now, open inventory file for reading. &lt;br /&gt;
    try { &lt;br /&gt;
      dataIn = new &lt;br /&gt;
          BinaryReader(new FileStream(&amp;quot;inventory.dat&amp;quot;, &lt;br /&gt;
                       FileMode.Open)); &lt;br /&gt;
    } &lt;br /&gt;
    catch(FileNotFoundException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nCannot open file.&amp;quot;); &lt;br /&gt;
      return; &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    // Lookup item entered by user. &lt;br /&gt;
    Console.Write(&amp;quot;Enter item to lookup: &amp;quot;); &lt;br /&gt;
    string what = Console.ReadLine(); &lt;br /&gt;
    Console.WriteLine(); &lt;br /&gt;
 &lt;br /&gt;
    try { &lt;br /&gt;
      for(;;) { &lt;br /&gt;
        // Read an inventory entry. &lt;br /&gt;
        item = dataIn.ReadString(); &lt;br /&gt;
        onhand = dataIn.ReadInt32(); &lt;br /&gt;
        cost = dataIn.ReadDouble(); &lt;br /&gt;
 &lt;br /&gt;
        /* See if the item matches the one requested. &lt;br /&gt;
           If so, display information */ &lt;br /&gt;
        if(item.rupareTo(what) == 0) { &lt;br /&gt;
          Console.WriteLine(onhand + &amp;quot; &amp;quot; + item + &amp;quot; on hand. &amp;quot; + &lt;br /&gt;
                            &amp;quot;Cost: {0:C} each&amp;quot;, cost); &lt;br /&gt;
          Console.WriteLine(&amp;quot;Total value of {0}: {1:C}.&amp;quot; , &lt;br /&gt;
                            item, cost * onhand); &lt;br /&gt;
          break; &lt;br /&gt;
        } &lt;br /&gt;
      } &lt;br /&gt;
    } &lt;br /&gt;
    catch(EndOfStreamException) { &lt;br /&gt;
      Console.WriteLine(&amp;quot;Item not found.&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;Read error.&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    dataIn.Close();  &lt;br /&gt;
  } &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Working with the BinaryReader Class==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
   &lt;br /&gt;
class MainClass {&lt;br /&gt;
    static public void Main() {&lt;br /&gt;
        FileStream    BinaryFile = new FileStream(&amp;quot;test.dat&amp;quot;, FileMode.Create, FileAccess.ReadWrite);&lt;br /&gt;
        BinaryReader  Reader = new BinaryReader(BinaryFile);&lt;br /&gt;
        BinaryWriter  Writer = new BinaryWriter(BinaryFile);&lt;br /&gt;
        &lt;br /&gt;
        Writer.Write(&amp;quot;a&amp;quot;);&lt;br /&gt;
        Writer.Write(123);&lt;br /&gt;
        Writer.Write(456.789);&lt;br /&gt;
        Writer.Write(&amp;quot;test string&amp;quot;);&lt;br /&gt;
        char   ReadCharacter;&lt;br /&gt;
        double ReadDouble;&lt;br /&gt;
        int    ReadInteger;&lt;br /&gt;
        string ReadString;&lt;br /&gt;
        &lt;br /&gt;
        BinaryFile.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
        ReadCharacter = Reader.ReadChar();&lt;br /&gt;
        ReadInteger = Reader.ReadInt32();&lt;br /&gt;
        ReadDouble = Reader.ReadDouble();&lt;br /&gt;
        ReadString = Reader.ReadString();&lt;br /&gt;
   &lt;br /&gt;
        Console.WriteLine(&amp;quot;Character: {0}&amp;quot;, ReadCharacter);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Integer: {0}&amp;quot;, ReadInteger);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Double: {0}&amp;quot;, ReadDouble);&lt;br /&gt;
        Console.WriteLine(&amp;quot;String: {0}&amp;quot;, ReadString);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Working with the BinaryWriter Class==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
   &lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    static public void Main()&lt;br /&gt;
    {&lt;br /&gt;
     FileStream BinaryFile = new FileStream(&amp;quot;test.dat&amp;quot;, FileMode.Create, FileAccess.ReadWrite);&lt;br /&gt;
     BinaryWriter  Writer = new BinaryWriter(BinaryFile);&lt;br /&gt;
     Writer.Write(&amp;quot;a&amp;quot;);&lt;br /&gt;
     Writer.Write(123);&lt;br /&gt;
     Writer.Write(456.789);&lt;br /&gt;
     Writer.Write(&amp;quot;test string&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Write and then read back binary data==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
C#: The Complete Reference &lt;br /&gt;
by Herbert Schildt &lt;br /&gt;
Publisher: Osborne/McGraw-Hill (March 8, 2002)&lt;br /&gt;
ISBN: 0072134852&lt;br /&gt;
*/&lt;br /&gt;
// Write and then read back binary data. &lt;br /&gt;
 &lt;br /&gt;
using System; &lt;br /&gt;
using System.IO;  &lt;br /&gt;
 &lt;br /&gt;
public class RWData { &lt;br /&gt;
  public static void Main() { &lt;br /&gt;
    BinaryWriter dataOut; &lt;br /&gt;
    BinaryReader dataIn; &lt;br /&gt;
 &lt;br /&gt;
    int i = 10; &lt;br /&gt;
    double d = 1023.56; &lt;br /&gt;
    bool b = true; &lt;br /&gt;
 &lt;br /&gt;
    try { &lt;br /&gt;
      dataOut = new &lt;br /&gt;
        BinaryWriter(new FileStream(&amp;quot;testdata&amp;quot;, FileMode.Create)); &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nCannot open file.&amp;quot;); &lt;br /&gt;
      return; &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    try { &lt;br /&gt;
      Console.WriteLine(&amp;quot;Writing &amp;quot; + i); &lt;br /&gt;
      dataOut.Write(i);  &lt;br /&gt;
 &lt;br /&gt;
      Console.WriteLine(&amp;quot;Writing &amp;quot; + d); &lt;br /&gt;
      dataOut.Write(d); &lt;br /&gt;
 &lt;br /&gt;
      Console.WriteLine(&amp;quot;Writing &amp;quot; + b); &lt;br /&gt;
      dataOut.Write(b); &lt;br /&gt;
 &lt;br /&gt;
      Console.WriteLine(&amp;quot;Writing &amp;quot; + 12.2 * 7.4); &lt;br /&gt;
      dataOut.Write(12.2 * 7.4); &lt;br /&gt;
 &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nWrite error.&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    dataOut.Close(); &lt;br /&gt;
 &lt;br /&gt;
    Console.WriteLine(); &lt;br /&gt;
 &lt;br /&gt;
    // Now, read them back. &lt;br /&gt;
    try { &lt;br /&gt;
      dataIn = new &lt;br /&gt;
          BinaryReader(new FileStream(&amp;quot;testdata&amp;quot;, FileMode.Open)); &lt;br /&gt;
    } &lt;br /&gt;
    catch(FileNotFoundException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;\nCannot open file.&amp;quot;); &lt;br /&gt;
      return; &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    try { &lt;br /&gt;
      i = dataIn.ReadInt32(); &lt;br /&gt;
      Console.WriteLine(&amp;quot;Reading &amp;quot; + i); &lt;br /&gt;
 &lt;br /&gt;
      d = dataIn.ReadDouble(); &lt;br /&gt;
      Console.WriteLine(&amp;quot;Reading &amp;quot; + d); &lt;br /&gt;
 &lt;br /&gt;
      b = dataIn.ReadBoolean(); &lt;br /&gt;
      Console.WriteLine(&amp;quot;Reading &amp;quot; + b); &lt;br /&gt;
 &lt;br /&gt;
      d = dataIn.ReadDouble(); &lt;br /&gt;
      Console.WriteLine(&amp;quot;Reading &amp;quot; + d); &lt;br /&gt;
    } &lt;br /&gt;
    catch(IOException exc) { &lt;br /&gt;
      Console.WriteLine(exc.Message + &amp;quot;Read error.&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    dataIn.Close();  &lt;br /&gt;
  } &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>