Maison  >  Article  >  développement back-end  >  Comment MemoryStream peut-il simplifier le stockage de structures sérialisées ?

Comment MemoryStream peut-il simplifier le stockage de structures sérialisées ?

DDD
DDDoriginal
2024-11-02 08:51:29963parcourir

How Can MemoryStream Simplify Serialized Structure Storage?

Stockage efficace des structures sérialisées dans des fichiers : utilisation de MemoryStream

Introduction

Stockage de données dans des fichiers est une tâche fondamentale en programmation. Lorsqu’il s’agit de structures sérialisées, il devient nécessaire de gérer efficacement le transfert de données vers et depuis les fichiers. Cet article explique comment utiliser la classe MemoryStream pour réaliser cette tâche de manière transparente.

Enregistrement d'un MemoryStream dans un fichier

Pour enregistrer le contenu d'un MemoryStream dans un fichier, vous pouvez tirer parti de la méthode WriteTo. Cette méthode prend un flux comme argument et y écrit tout le contenu du MemoryStream. Voici un exemple :

<code class="csharp">using (var fileStream = new FileStream("serialized.dat", FileMode.Create))
{
    memoryStream.WriteTo(fileStream);
}</code>

Ce code ouvre un flux de fichiers en mode écriture, puis écrit le contenu du MemoryStream dans le fichier.

Chargement d'un MemoryStream à partir d'un fichier

Pour charger la structure sérialisée d'un fichier dans un MemoryStream, vous pouvez utiliser le constructeur FileStream pour créer une nouvelle instance de flux qui lit les données du fichier. Une fois le flux de fichiers créé, vous pouvez utiliser la méthode CopyTo pour copier le contenu du flux de fichiers dans MemoryStream :

<code class="csharp">using (var fileStream = new FileStream("serialized.dat", FileMode.Open))
{
    fileStream.CopyTo(memoryStream);
}</code>

Mises à jour dans les versions de .NET Framework

Dans les versions antérieures de .NET Framework (avant 4.5), les méthodes WriteTo et CopyTo n'étaient pas disponibles sur la classe MemoryStream. Au lieu de cela, vous devrez parcourir manuellement le flux de mémoire et écrire son contenu dans le fichier à l'aide de méthodes telles que WriteByte ou WriteInt32.

Cependant, à partir de .NET Framework 4.5.1, la méthode CopyTo a été introduite, ce qui rend il est plus facile de transférer le contenu du flux. Dans .NET Framework 4.5.2, la méthode WriteTo a également été ajoutée, offrant une approche alternative avec des fonctionnalités similaires.

Conclusion

En utilisant les méthodes WriteTo ou CopyTo , vous pouvez enregistrer et charger efficacement des structures sérialisées dans des fichiers. Ces méthodes simplifient le processus, vous permettant de gérer le transfert de données de manière transparente et efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn