无涯教程-C# - BinaryReader类

101 阅读1分钟

C#BinaryReader类用于从流中读取二进制信息。它位于System.IO命名空间中。还支持以特定编码方式读取字符串。

C#BinaryReader示例

让无涯教程看一下从dat文件读取数据的BinaryReader类的简单示例。

using System;
using System.IO;
namespace BinaryWriterExample
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteBinaryFile();
            ReadBinaryFile();
            Console.ReadKey();
        }
        static void WriteBinaryFile()
        {
            using (BinaryWriter writer = new BinaryWriter(File.Open("e:\\binaryfile.dat", FileMode.Create)))
            {
            writer</span><span class="pun">.</span><span class="typ">Write</span><span class="pun">(</span><span class="lit">12.5</span><span class="pun">);</span><span class="pln">
            writer</span><span class="pun">.</span><span class="typ">Write</span><span class="pun">(</span><span class="str">"this is string data"</span><span class="pun">);</span><span class="pln">
            writer</span><span class="pun">.</span><span class="typ">Write</span><span class="pun">(</span><span class="kwd">true</span><span class="pun">);</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="kwd">static</span><span class="pln"> </span><span class="kwd">void</span><span class="pln"> </span><span class="typ">ReadBinaryFile</span><span class="pun">()</span><span class="pln">
    </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">using</span><span class="pln"> </span><span class="pun">(</span><span class="typ">BinaryReader</span><span class="pln"> reader </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">BinaryReader</span><span class="pun">(</span><span class="typ">File</span><span class="pun">.</span><span class="typ">Open</span><span class="pun">(</span><span class="str">"e:\\binaryfile.dat"</span><span class="pun">,</span><span class="pln"> </span><span class="typ">FileMode</span><span class="pun">.</span><span class="typ">Open</span><span class="pun">)))</span><span class="pln">
        </span><span class="pun">{</span><span class="pln">
            </span><span class="typ">Console</span><span class="pun">.</span><span class="typ">WriteLine</span><span class="pun">(</span><span class="str">"Double Value : "</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> reader</span><span class="pun">.</span><span class="typ">ReadDouble</span><span class="pun">());</span><span class="pln">
            </span><span class="typ">Console</span><span class="pun">.</span><span class="typ">WriteLine</span><span class="pun">(</span><span class="str">"String Value : "</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> reader</span><span class="pun">.</span><span class="typ">ReadString</span><span class="pun">());</span><span class="pln">
            </span><span class="typ">Console</span><span class="pun">.</span><span class="typ">WriteLine</span><span class="pun">(</span><span class="str">"Boolean Value : "</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> reader</span><span class="pun">.</span><span class="typ">ReadBoolean</span><span class="pun">());</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
</span><span class="pun">}</span><span class="pln">

}

输出:

Double Value : 12.5
String Value : this is string data
Boolean Value : true

参考链接

www.learnfk.com/csharp/c-sh…