Écrire des fichiers CSV en C# : résoudre le problème d'écrasement
Lors de l'écriture d'un fichier CSV en C#, un problème courant est que seule la dernière ligne est écrite. En effet, chaque itération de la boucle écrase le contenu existant dans le fichier.
Pour résoudre ce problème, chaque ligne doit être ajoutée au fichier CSV au lieu de l'écraser. Pour ce faire, créez un objet StringBuilder et ajoutez-y de nouvelles lignes dans une boucle. Une fois la boucle terminée, l'intégralité du contenu de StringBuilder est écrite dans un fichier CSV.
Ce qui suit est un exemple de fonction corrigée :
<code class="language-csharp">var csv = new StringBuilder(); string first = reader[0].ToString(); string second = image.ToString(); csv.AppendLine(string.Format("{0},{1}", first, second)); File.WriteAllText(filePath, csv.ToString());</code>
Vous pouvez également utiliser la méthode File.AppendAllText :
<code class="language-csharp">string newLine = string.Format("{0},{1}", first, second); File.AppendAllText(filePath, newLine);</code>
Cela ajoutera de nouvelles lignes au fichier existant sans écraser son contenu.
Une autre façon d'écrire un fichier CSV consiste à utiliser la bibliothèque CsvHelper. Cette bibliothèque simplifie ce processus en gérant les conversions de types, l'échappement de chaînes et d'autres complexités associées aux fichiers CSV.
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!