Мне удается преобразовать все мои данные из SharePoint в CSV и сохранить их в локальной среде. Я пропустил просмотр и увидел, что в моих данных есть запятая, и это создало новую строку в моем CSV.
Это вывод моего CSV-результата.
0|1|2|3|4
0|1|2,3|4|5
Я уже пытаюсь удалить запятую, и мне говорят, что это плохой способ сделать это. После рассмотрения нескольких вопросов в StackOverFlow я все еще застрял на нем.
private static void ExportToCSV(DataTable dTblSPGroupUser, StreamWriter sw, clsReport rule, string sFileName, string strDelimiter)
{
try
{
foreach (DataRow dr in dTblSPGroupUser.Rows) // Now write all the rows.
{
var builder = new System.Text.StringBuilder();
foreach (clsField metadataItems in rule.Indexing)
{
if (!Convert.IsDBNull(dr[metadataItems.FieldName.ToString()]))
{
builder.Append(dr[metadataItems.FieldName.ToString()].ToString());
}
builder.Append(strDelimiter);
}
string sData = builder.ToString();
sData = sData.Remove(sData.Length - 1);
// This is part I try to check
if (sData.Contains(", "))
{
sData = string.Format("\"{0}\"", sData);
// What I should add here?
}
sw.Write(sData);
sw.Write(sw.NewLine);
//sData = ""; No need to clear after write newLine.
}
sw.Close();
Log("File " + sFileName + " Closed");
}
catch (Exception ex)
{
Log(ex.ToString());
}
}
Я пытаюсь использовать аккуратный и немного другой метод, который кажется неудачным. В любом случае я мог бы добавить в него двойной столбец, так как я читаю его по строкам. Да, я верю, что в этой сети есть сотни решений, но я не могу найти 1, который может решить мою проблему. Пожалуйста, сделайте совет.
Мой ожидаемый результат: -
0|1|2|3|4
0|1|"2,3"|4|5
Спасибо.