Maison > développement back-end > C++ > Quelle est la façon la plus efficace de lire un fichier texte ligne par ligne en C #?

Quelle est la façon la plus efficace de lire un fichier texte ligne par ligne en C #?

Linda Hamilton
Libérer: 2025-01-29 08:25:10
original
412 Les gens l'ont consulté

What's the Most Efficient Way to Read a Text File Line by Line in C#?

C # Lire efficacement les fichiers texte

Lors de la gestion des fichiers texte en C #, il est important de le lire efficacement. La méthode couramment utilisée consiste à utiliser pour analyser les fichiers par ligne. Cependant, afin d'améliorer les performances, il existe plusieurs autres technologies à considérer.

<.> 1. StreamReader avec le tampon: StreamReader.ReadLine()

La taille du tampon par défaut est de 1024 octets. L'augmentation de cette valeur peut considérablement améliorer les performances, en particulier pour les fichiers volumineux. Envisagez d'utiliser la taille du tampon de réglage de code suivant:

<.> 2. File.readlines:

StreamReader

Cette méthode fournit des alternatives plus efficaces que
using (var fileStream = File.OpenRead(fileName))
using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, 128))
{
    string line;
    while ((line = streamReader.ReadLine()) != null)
    {
        // 处理每一行
    }
}
Copier après la connexion
. Il est chargé à la demande pour minimiser la consommation de mémoire:

<.> 3. File.readalllines:

StreamReader.ReadLine() Cette méthode renvoie tout le tableau de toutes les lignes, mais par rapport à

, l'efficacité de la mémoire est faible. Si vous devez accéder à la ligne au hasard, cette méthode est applicable:
var lines = File.ReadLines(fileName);
foreach (var line in lines)
    // 处理每一行
Copier après la connexion

<.> 4. String.split:

L'utilisation de <割> la plus efficace de la ligne de division, en particulier pour les grands documents. Il doit charger le fichier entier dans la mémoire et allouer un tableau pour toutes les lignes: File.ReadLines

var lines = File.ReadAllLines(fileName);
for (var i = 0; i < lines.Length; i++)
    // 处理每一行
Copier après la connexion
Méthode recommandée:

Afin d'obtenir les meilleures performances, il est recommandé d'utiliser

car il a un équilibre entre la vitesse et l'efficacité de la mémoire. Si vous avez besoin d'une option de partage de fichiers spécifique, vous pouvez envisager d'utiliser le

avec la taille du tampon. String.Split

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal