.CSV文件逐行写入,检查错误

时间:2012-10-02 09:43:41

标签: c# file csv

第一个问题,所以希望它是相关的。虽然编码不是很新......我对'好'编码很新,所以如果我完全没有意识到明显的最佳实践,那就道歉了。

我目前正在逐行写入CSV文件(使用c#)。

直到今天早上我被告知,这个部分一切都很顺利,部门我正在写代码实际上想要一行中的所有行(我每批做一个文件,并对批量lvl进行错误检查) ,所以如果批次没有出错,那么没有导出批次)

他们仍然需要它在批处理lvl上是全部或全部(并且我在尝试将它们写入文件之前检查'cell'值,因此该阶段应该有效)但我敏锐地意识到那个在开始文件写入之前,我目前无法检查的代码的一部分是行自己编写的。而且我想知道单个行无法写入的可能性有多大?假设文件是​​为第一行正确创建/正确访问的? 我猜其次,如果这可能是一个问题,我应该注意哪些“最佳实践”容易(或消除)这个问题。

代码,我在下面调用需要编写的批处理中的每一行。

public void WriteRow(CsvRow row)
    {
        StringBuilder builder = new StringBuilder();
        bool firstColumn = true;
        foreach (string value in row)
        {
            // Add separator if this isn't the first value
            if (!firstColumn)
                builder.Append(',');
            // Implement special handling for values that contain comma or quote
            // Enclose in quotes and double up any double quotes
            if (value.IndexOfAny(new char[] { '"', ',' }) != -1)
                builder.AppendFormat("\"{0}\"", value.Replace("\"", "\"\""));
            else
                builder.Append(value);
            firstColumn = false;
        }
        row.LineText = builder.ToString();
        WriteLine(row.LineText);
    }

0 个答案:

没有答案