Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. public void CreateCSVFile(DataTable dt, string strFilePath)
  2. {
  3. #region Export Grid to CSV
  4.  
  5. // Create the CSV file to which grid data will be exported.
  6. StreamWriter sw = new StreamWriter(strFilePath, false);
  7.  
  8. // First we will write the headers.
  9. //DataTable dt = m_dsProducts.Tables[0];
  10. int iColCount = dt.Columns.Count;
  11.  
  12. for (int i = 0; i < iColCount; i++)
  13. {
  14. sw.Write(dt.Columns[i]);
  15. if (i < iColCount - 1)
  16. {
  17. sw.Write(",");
  18. }
  19. }
  20. sw.Write(sw.NewLine);
  21.  
  22. // Now write all the rows.
  23. foreach (DataRow dr in dt.Rows)
  24. {
  25. for (int i = 0; i < iColCount; i++)
  26. {
  27. if (!Convert.IsDBNull(dr[i]))
  28. {
  29. sw.Write(dr[i].ToString());
  30. }
  31. if (i < iColCount - 1)
  32. {
  33. sw.Write(",");
  34. }
  35. }
  36. sw.Write(sw.NewLine);
  37. }
  38. sw.Close();
  39.  
  40. #endregion
  41. }
  42.  
  43. string attachment = "attachment; filename=MyCsvLol.csv";
  44. HttpContext.Current.Response.Clear();
  45. HttpContext.Current.Response.ClearHeaders();
  46. HttpContext.Current.Response.ClearContent();
  47. HttpContext.Current.Response.AddHeader("content-disposition", attachment);
  48. HttpContext.Current.Response.ContentType = "text/csv";
  49. HttpContext.Current.Response.AddHeader("Pragma", "public");
  50.  
  51. var sb = new StringBuilder();
  52. foreach(var line in DataToExportToCSV)
  53. sb.AppendLine(TransformDataLineIntoCsv(line));
  54.  
  55. HttpContext.Current.Response.Write(sb.ToString());
  56. HttpContext.Current.Response.End();
  57.  
  58. FileHelpers.CsvEngine.DataTableToCsv(dataTable, filename);
  59.  
  60. string filePath = @"C:test.csv";
  61. string delimiter = ",";
  62.  
  63. string[][] output = new string[][]{
  64. new string[]{"Col 1 Row 1", "Col 2 Row 1", "Col 3 Row 1"},
  65. new string[]{"Col1 Row 2", "Col2 Row 2", "Col3 Row 2"}
  66. };
  67. int length = output.GetLength(0);
  68. StringBuilder sb = new StringBuilder();
  69. for (int index = 0; index < length; index++)
  70. sb.AppendLine(string.Join(delimiter, output[index]));
  71.  
  72. File.WriteAllText(filePath, sb.ToString());
  73.  
  74. Year,Make,Model
  75. 1997,Ford,E350
  76. 2000,Mercury,Cougar
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement