Използване на класа MemoryStream

байт байт

Книгата е предназначена за широк кръг читатели, интересуващи се от програмиране на C#. Въведете кратка анотация тук

Книга: C# 4.0: Пълното ръководство

Използване на класа MemoryStream

Използване на класа MemoryStream

MemoryStream(байт[] буфер)

Като пример, по-долу е програма, която демонстрира използването на класа MemoryStream в I/O операции.

// Демонстрирайте използването на класа MemoryStream.с помощта на System;с помощта на System.IO;class MemStrDemostatic void Main()byte[] storage = new byte[255];// Създайте поток от памет.MemoryStream memstrm = нов MemoryStream (съхранение);// чете и записва данни в потоци.StreamWriter memwtr = нов StreamWriter(memstrm);StreamReader memrdr = нов StreamReader(memstrm);опитайте// Записване на данни в паметта чрез обект memwtr.for(int i=0; i

Ето резултата от стартирането на тази програма.

Четене директно от хранилище на масив:байт[0]: 0байт[1]: 1байт[2]: 2байт[3]: 3байт[4]: 4байт[5]: 5байт[6]: 6байт[7]: 7байт[8]: 8байт[9]: 9Четене от поток с помощта на memrdr:байт[1]: 1байт[2]: 2байт[3]: 3байт[4]: 4байт[5]: 5байт[6]: 6байт[7]: 7байт[8]: 8байт[9]: 9

Тази програма първо създава масив от байтове, наречен съхранение. След това този масив се използва като основна памет за обекта memstrm на класа MemoryStream. От обекта memstrm на свой ред се създаватобекти memrdr от клас StreamReader и memwtr от клас StreamWriter. Използвайки обекта memwtr, изходът се записва в потока за съхранение. Обърнете внимание, че след записването на изхода за обекта memwtr се извиква методът Flush(). Това е необходимо, така че съдържанието на буфера на този обект да се записва директно в основния масив. След това съдържанието на базовия байтов масив се показва ръчно в цикъл за всеки. След това указателят на файла се настройва с помощта на метода Seek() в началото на потока за съхранение, от който след това се въвеждат данни с помощта на обекта memrdr stream.