第一个问题,所以希望它是相关的。虽然编码不是很新......我对'好'编码很新,所以如果我完全没有意识到明显的最佳实践,那就道歉了。
我目前正在逐行写入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);
}