Ich habe Daten in einem Dataset. Wie würde ich es in eine tabulatorgetrennte Datei exportieren?Exportieren von einem Dataset in eine tabulatorgetrennte Datei
5
A
Antwort
6
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();
0
Versuchen Sie dieses:
http://www.codeproject.com/KB/aspnet/ExportClassLibrary.aspx
Ich hoffe, dass Sie ganz einfach Datentabellen von Daten-Set bekommen ...
0
Versuchen Sie dieses;
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();
2
Das gleiche Problem hier. Haben Sie eine bessere für Sie:
var builder = new StringBuilder();
foreach (DataRow row in dataSet.Tables.First().Rows) {
builder.AppendLine(String.Join("\t", row.ItemArray));
}
File.WriteAllText(filePath, builder.ToString());
Es ist ein bisschen kompakter und (möglicherweise) ein bisschen schneller.
Versuchen Sie die Antworten in dieser Frage .. http://stackoverflow.com/questions/2888385/net-tab-delimited-files –