首頁 > 後端開發 > C++ > 如何在C#中有效率地將資料逐行寫入CSV檔案?

如何在C#中有效率地將資料逐行寫入CSV檔案?

Patricia Arquette
發布: 2025-01-23 03:01:09
原創
598 人瀏覽過

How Can I Efficiently Write Data Row by Row to a CSV File in C#?

C#中逐行寫入CSV檔案的有效方法

在C#中逐行寫入CSV檔案可以使用檔案I/O操作實作。但是,務必考慮具體的規範要求,以確保每一行都正確寫入。

最初,通常會使用以下技術手動將資料寫入CSV檔案:

<code class="language-csharp">string csv = string.Format("{0},{1}\n", first, second);
File.WriteAllText(filePath, csv);</code>
登入後複製

然而,這種方法會覆寫先前寫入的行,導致CSV檔案中只保留最後一行。為了正確寫入所有行,建議使用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>
登入後複製

或者,如果您希望保留先前的CSV數據,可以使用File.AppendAllText()來取代File.WriteAllText():

<code class="language-csharp">File.AppendAllText(filePath, csv.ToString());</code>
登入後複製

為了提高程式碼的可讀性,C# 6.0引入了字串插值,允許您編寫:

<code class="language-csharp">string newLine = $"{first},{second}";</code>
登入後複製

總之,透過使用StringBuilder和File.WriteAllText()或File.AppendAllText(),您可以有效地逐行將資料寫入CSV文件,並保持所有行的完整性。

以上是如何在C#中有效率地將資料逐行寫入CSV檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板