[VB.NET][C#.NET] MemoryStream / BufferedStream 类

[VB.NET][C#.NET] MemoryStream / BufferedStream 类


MemoryStreamStringReader / StringWriter 类用法差不多,但两者还是些微不同;MemoryStream可以将已经写入内存的数据,直接另存到实例文件,而StringWriter不能直接存。

        private void button1_Click(object sender, EventArgs e)
        {
            //引用MemoryStream类
            MemoryStream myMem = new MemoryStream();
            //引用StreamWriter类
            StreamWriter myWriter = new StreamWriter(myMem);
            //写数据至内存
            myWriter.Write("写数据至:");
            myWriter.WriteLine("内存(Memory)");
            //写数据至文件
            myWriter.Flush();
            FileStream myFile = File.Open(@"C:myFile.txt", FileMode.OpenOrCreate);
            myMem.WriteTo(myFile);
            //释放
            myFile.Dispose();
            myWriter.Dispose();
            myMem.Dispose();
 
        }


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        '引用MemoryStream类
        Dim myMem As MemoryStream = New MemoryStream()
        '引用StreamWriter类
        Dim myWriter As StreamWriter = New StreamWriter(myMem)
        '写数据至内存
        myWriter.Write("写数据至:")
        myWriter.WriteLine("内存(Memory)")
        '写数据至文件
        myWriter.Flush()
        Dim myFile As FileStream = File.Open("C:myFile.txt", FileMode.OpenOrCreate)
        myMem.WriteTo(myFile)
        '释放
        myFile.Dispose()
        myWriter.Dispose()
        myMem.Dispose()
    End Sub


BufferedStream 类,是将缓冲层加入另一数据流上的读写。

有时候直接将数据写入文件性能并不好,由其是在处理大笔数据时,为了提高处理效率可以使用BufferedStream 类,将数据写入缓冲区内,当缓冲区被全部清除输出时,数据才会真正的被写入数据。

        private void button2_Click(object sender, EventArgs e)
        {
            FileStream myFile = File.Open(@"C:myFile.txt", FileMode.Create, FileAccess.Write, FileShare.Write);
            BufferedStream myBuf = new BufferedStream(myFile);
            StreamWriter myWrite = new StreamWriter(myBuf);
 
            myWrite.Write("写入缓冲区");
            myWrite.WriteLine("步骤还真麻烦");
 
            myBuf.Flush();
            //释放
            myWrite.Dispose();
            myBuf.Dispose();
            myFile.Dispose();
        }


    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim myFile As FileStream = File.Open("C:myFile.txt", FileMode.Create, FileAccess.Write, FileShare.Write)
        Dim myBuf As BufferedStream = New BufferedStream(myFile)
        Dim myWrite As StreamWriter = New StreamWriter(myBuf)
 
        myWrite.Write("写入缓冲区")
        myWrite.WriteLine("步骤还真麻烦")
 
        myBuf.Flush()
        '释放
        myWrite.Dispose()
        myBuf.Dispose()
        myFile.Dispose()
    End Sub


若有谬误,烦请告知,新手发帖请多包涵

2010~2017 C# 第四季

原文:大专栏  [VB.NET][C#.NET] MemoryStream / BufferedStream 类


猜你喜欢

转载自www.cnblogs.com/petewell/p/11526609.html
今日推荐