トリプルヘッダー行と.csvに:エクスポート私は以下、このCSVファイルのようなデータを持ってASP.Net
CustomerID, Name, Email
1, Name A, [email protected]
2, Name B, [email protected]
3, Name C, [email protected]
ファイルを.csvにエクスポートするためのコードは良好に動作しています。上記のように配信されたデータ。しかし、私はこのような.csvファイルの形式を変更する必要があります。私はすでに+ =ちょうど次の行を繰り返し、別の変数のバイト[]を追加してStringBulderをしよう
public List<CustomerInfo> GetCustomers()
{
List<CustomerInfo> customerList = new List<CustomerInfo>();
customerList.Add(new CustomerInfo { CustomerID = 1, Name = "Name A", Email = "[email protected]" });
customerList.Add(new CustomerInfo { CustomerID = 2, Name = "Name B", Email = "[email protected]" });
customerList.Add(new CustomerInfo { CustomerID = 3, Name = "Name C", Email = "[email protected]" });
return customerList;
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
sb += sb.Append(string.Format("{0},{1},{2}", "CustomerID", "Name", "Email") + Environment.NewLine);
List<CustomerInfo> customerList = GetCustomers();
foreach (CustomerInfo objCustomer in customerList)
{
sb.Append(string.Format("{0},{1},{2}", objCustomer.CustomerID.ToString(), objCustomer.Name, objCustomer.Email) + Environment.NewLine);
}
byte[] bytes = Encoding.ASCII.GetBytes(sb.ToString());
if (bytes != null)
{
Response.Clear();
Response.ContentType = "text/csv";
Response.AddHeader("Content-Length", bytes.Length.ToString());
Response.AddHeader("Content-disposition", "attachment; filename=\"sample.csv" + "\"");
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
}
}
:
CustomerID
Name
Email
1
Name A
[email protected]
CustomerID
Name
Email
2
Name B
[email protected]
CustomerID
Name
Email
3
Name C
[email protected]
以下は私のコードです。しかし、それはまだ動作しません。それは私に、刺すようなビルダーが+ =でできないエラーを示しています。たぶん私はそれを作るのが間違っています。しかし、私はどのようにcsvファイルにトリプルローヘッダーを作るのか分かりません。私はgoogleでそんなに検索していますが、私はまだフォーマットの.csvが見つかりません。
カンマの代わりに、 'Environment.NewLine'を使用してください。 –
あなたの提案には本当にありがとうございます。それは仕事の男です:D –
誰かがもっと努力したように見えます - 正しいかどうか試してみてください。 –