This method is used to converting datatable to CSV file .
SaveDataTableToCsvFile(@”c:\temp\test111.csv”, dtSample);
SaveDataTableToCsvFile(@”c:\temp\test222.csv”, dtSample, “;”);
/// <summary>
/// Creates a CSV file
/// </summary>
/// <param name=”AbsolutePathAndFileName”></param>
/// <param name=”TheDataTable”></param>
/// <param name=”Options”>[0] = separator, e.g. “;” (default = “,”)</param>
public static void SaveDataTableToCsvFile(string AbsolutePathAndFileName, DataTable TheDataTable, params string[] Options)
{
//variables
string separator;
if (Options.Length > 0)
{
separator = Options[0];
}
else
{
separator = “,”; //default
}
string quote = “\”";
//create CSV file
StreamWriter sw = new StreamWriter(AbsolutePathAndFileName);
//write header line
int iColCount = TheDataTable.Columns.Count;
for (int i = 0; i < iColCount; i++)
{
sw.Write(TheDataTable.Columns[i]);
if (i < iColCount – 1)
{
sw.Write(separator);
}
}
sw.Write(sw.NewLine);
//write rows
foreach (DataRow dr in TheDataTable.Rows)
{
for (int i = 0; i < iColCount; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
string data = dr[i].ToString();
data = data.Replace(“\”", “\\\“”);
sw.Write(quote + data + quote);
}
if (i < iColCount – 1)
{
sw.Write(separator);
}
}
sw.Write(sw.NewLine);
}
sw.Close();
}
