Maison >développement back-end >C++ >Comment puis-je écrire efficacement des données ligne par ligne dans un fichier CSV en C# ?
Moyen efficace d'écrire un fichier CSV ligne par ligne en C#
L'écriture d'un fichier CSV ligne par ligne en C# peut être implémentée à l'aide d'opérations d'E/S de fichier. Cependant, veillez à prendre en compte les exigences spécifiques des spécifications pour vous assurer que chaque ligne est écrite correctement.
Initialement, les données sont généralement écrites manuellement dans un fichier CSV en utilisant la technique suivante :
<code class="language-csharp">string csv = string.Format("{0},{1}\n", first, second); File.WriteAllText(filePath, csv);</code>
Cependant, cette méthode écrase les lignes précédemment écrites, ce qui fait que seule la dernière ligne reste dans le fichier CSV. Afin d'écrire correctement toutes les lignes, il est recommandé d'utiliser les objets StringBuilder.
<code class="language-csharp">var csv = new StringBuilder(); // 使用逗号分隔值填充StringBuilder while (reader.Read()) { string first = reader[0].ToString(); string second = image.ToString(); csv.AppendLine($"{first},{second}"); // 使用字符串插值 } // 将整个StringBuilder写入CSV文件 File.WriteAllText(filePath, csv.ToString());</code>
Alternativement, si vous souhaitez conserver les données CSV précédentes, vous pouvez utiliser File.AppendAllText() au lieu de File.WriteAllText() :
<code class="language-csharp">File.AppendAllText(filePath, csv.ToString());</code>
Pour améliorer la lisibilité du code, C# 6.0 introduit l'interpolation de chaînes, vous permettant d'écrire :
<code class="language-csharp">string newLine = $"{first},{second}";</code>
En résumé, en utilisant StringBuilder et File.WriteAllText() ou File.AppendAllText(), vous pouvez écrire efficacement des données dans un fichier CSV ligne par ligne et conserver toutes les lignes intactes.
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!