Bagaimanakah anda menyimpan dan memuatkan data bersiri daripada MemoryStream ke fail?

Mary-Kate Olsen
Lepaskan: 2024-11-01 11:13:30
asal
856 orang telah melayarinya

How do you save and load serialized data from a MemoryStream to a file?

Menguruskan MemoryStream: Menyimpan dan Memuatkan daripada Fail

Siri membolehkan penukaran objek kepada aliran bait, membolehkan penyimpanannya dalam fail atau penghantaran melalui rangkaian. Soalan ini menangani cabaran khusus untuk menyimpan dan memuatkan struktur bersiri yang disimpan dalam MemoryStream ke fail.

Menyimpan MemoryStream ke Fail

Untuk menyimpan kandungan bersiri daripada MemoryStream ke fail, anda boleh menggunakan kaedah WriteTo. Kaedah ini mengambil aliran sebagai hujah dan menulis kandungan MemoryStream kepadanya. Berikut ialah contoh:

using System.IO;
using System.Runtime.Serialization.Formatters.Binary;

// Create a MemoryStream to store serialized data
MemoryStream memoryStream = new MemoryStream();

// Serialize an object to memory stream
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream, objectToSerialize);

// Save MemoryStream to file
using (FileStream fileStream = new FileStream("filename.bin", FileMode.Create))
{
    memoryStream.WriteTo(fileStream);
}
Salin selepas log masuk

Memuatkan MemoryStream daripada Fail

Untuk memuatkan kandungan bersiri daripada fail ke dalam MemoryStream, anda boleh menggunakan kaedah CopyTo (diperkenalkan dalam rangka kerja versi 4.5.2 ). Kaedah ini memindahkan kandungan satu aliran ke aliran yang lain. Dalam kes ini, data daripada fail disalin ke dalam MemoryStream. Berikut ialah contoh:

// Create a MemoryStream to receive the loaded data
MemoryStream loadedMemoryStream = new MemoryStream();

// Load file into MemoryStream
using (FileStream fileStream = new FileStream("filename.bin", FileMode.Open))
{
    fileStream.CopyTo(loadedMemoryStream);
}
Salin selepas log masuk

Kemas kini: Mulai rangka kerja versi 4.5, kaedah CopyTo juga boleh digunakan untuk menyimpan MemoryStream ke fail. Kod di bawah boleh digunakan secara bergantian dengan kaedah WriteTo:

using System.IO;
using System.Runtime.Serialization.Formatters.Binary;

// Create a MemoryStream to store serialized data
MemoryStream memoryStream = new MemoryStream();

// Serialize an object to memory stream
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream, objectToSerialize);

// Save MemoryStream to file
using (FileStream fileStream = new FileStream("filename.bin", FileMode.Create))
{
    memoryStream.CopyTo(fileStream);
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah anda menyimpan dan memuatkan data bersiri daripada MemoryStream ke fail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!