C# 从数据集导出到以制表符分隔的文件

C# 从数据集导出到以制表符分隔的文件,c#,export-to-excel,C#,Export To Excel,我有数据集中的数据。如何将其导出到以制表符分隔的文件中?试试这个: 我希望您可以轻松地从数据集获取数据表…试试这个 var builder = new StringBuilder() foreach(var row in dataSet.Tables.First().Rows) { foreach(var cell in row.ItemArray) { builder.Append(cell.ToString()); if(cell != row.Cel

我有数据集中的数据。如何将其导出到以制表符分隔的文件中?

试试这个:

我希望您可以轻松地从数据集获取数据表…

试试这个

var builder = new StringBuilder()

foreach(var row in dataSet.Tables.First().Rows)
{
   foreach(var cell in row.ItemArray)
   {
      builder.Append(cell.ToString());
      if(cell != row.Cells.Last())
         builder.Append("\t");
   }
   builder.Append(Environment.NewLine);
}

var file = new FileStream(filePath);
var writer = new StreamWriter(file);
writer.Write(builder.ToString());
writer.Flush();
writer.Close();
    string updatefilePath = Server.MapPath("Files\\newoutput.PIPE");

    StreamWriter sw = new StreamWriter(updatefilePath, false);
    int iColCount = dt.Columns.Count;
    for (int i = 0; i < iColCount; i++)
    {
        sw.Write(dt.Columns[i]);

        if (i < iColCount - 1)
        {
            sw.Write("|");
        }
    }
    sw.Write(sw.NewLine);

    foreach (DataRow row in dt.Rows)
    {
        for (int i = 0; i < iColCount; i++)
        {
            if (!Convert.IsDBNull(row[i]))
            {
                sw.Write(row[i].ToString());
            }
            if (i < iColCount - 1)
            {
                sw.Write("|");
            }
        }
        sw.Write(sw.NewLine);
    }
    sw.Close();
string updatefilePath=Server.MapPath(“Files\\newoutput.PIPE”);
StreamWriter sw=新StreamWriter(updatefilePath,false);
int iColCount=dt.Columns.Count;
对于(int i=0;i
这里也有同样的问题。有更好的给你:

var builder = new StringBuilder();
foreach (DataRow row in dataSet.Tables.First().Rows) {
   builder.AppendLine(String.Join("\t", row.ItemArray));
}
File.WriteAllText(filePath, builder.ToString());

它有点紧凑,(可能)有点快。

试试这个问题的答案。。