Maison > développement back-end > C++ > Comment puis-je empêcher l'écrasement lors de l'écriture de plusieurs lignes dans un fichier CSV en C# ?

Comment puis-je empêcher l'écrasement lors de l'écriture de plusieurs lignes dans un fichier CSV en C# ?

Susan Sarandon
Libérer: 2025-01-23 02:57:10
original
786 Les gens l'ont consulté

How Can I Prevent Overwriting When Writing Multiple Rows to a CSV File in C#?

Écriture de données dans un fichier CSV en C# : méthode ligne par ligne

En C#, vous pouvez écrire des données dans un fichier CSV ligne par ligne. Supposons que vous deviez écrire plusieurs lignes de données dans un fichier à l'aide d'une boucle. Cependant, vous rencontrez un problème où seule la dernière ligne est écrite et écrase les lignes précédentes.

Pour résoudre ce problème, veuillez suivre ces méthodes :

  1. Utilisez StringBuilder : Au lieu d'écrire directement dans le fichier pour chaque ligne, accumulez les données de la ligne dans un StringBuilder. Cela évite les opérations d'écriture inutiles dans le fichier.
  2. Formater les lignes : Utilisez le formatage de chaîne pour créer des données de ligne au format ",<seconde valeur>". </Deuxième valeur></Première valeur></li> <li> <strong>Ajouter à StringBuilder :</strong> Ajoutez chaque ligne de données formatées à un StringBuilder à l'aide d'AppendLine pour garder une trace de toutes les lignes. </li> <li> <strong>Écrivez le fichier en une seule fois :</strong> Une fois la boucle terminée, utilisez File.WriteAllText ou File.AppendAllText pour écrire le contenu de StringBuilder dans le fichier, selon que vous souhaitez écraser ou ajouter à les données de données existantes. </li> </ol> <p>En utilisant cette approche, votre code pourrait ressembler à ceci : </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>StringBuilder csv = new StringBuilder(); // 循环遍历数据行 string first = reader[0].ToString(); string second = image.ToString(); string newLine = $"{first},{second}"; csv.AppendLine(newLine); // 循环结束后写入文件 File.WriteAllText(filePath, csv.ToString());
    Copier après la connexion

En tirant parti de StringBuilder et de l'écriture différée, vous pouvez écrire efficacement toutes les lignes de données dans un fichier CSV sans les écraser.

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