- PR -

CSVファイルの作成方法

1
投稿者投稿内容
damepg
大ベテラン
会議室デビュー日: 2003/03/19
投稿数: 229
お住まい・勤務地: 東京都内
投稿日時: 2003-06-02 16:19
VB.NETでweb開発をしています。
DataGridで表示した内容をカンマ区切りのCSVファイルに
することを考えています。
DataGridを一つのDataTableで表示している場合は、
一発でCSVに変換出来る方法があると聞きました。
どうのように処理を書くのでしょうか?

一レコードづつバッファにカンマ編集する面倒な方法は
とりたくありません。

どなたか私にご教授お願いします。

下記のやり方でCSVには保存できるのですが、DataGridのヘッダー部だけ
データが取れません。どうしてでしょうか?

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim sCSVFilenm As String = "CustomerList.csv"

Response.Clear()
Response.ContentEncoding = System.Text.Encoding.GetEncoding("shift-jis")
Response.ContentType = "application/vnd.ms-excel"
Response.AppendHeader("Content-Disposition", "attachment; filename=" & sCSVFilenm & "")

Dim ColList As System.Web.UI.WebControls.DataGridColumn
Dim RowList As System.Web.UI.WebControls.DataGridItem
Dim CellList As System.Web.UI.WebControls.TableCell

'タイトル
Response.Write("顧客一覧" & vbNewLine)

'ヘッダー部
Dim strRow1 As New System.Text.StringBuilder()
For Each ColList In DataGrid1.Columns
If strRow1.Length <> 0 Then strRow1.Append(",")
strRow1.Append(ColList.HeaderText)
Next ColList
Response.Write(strRow1.ToString & vbNewLine)

'データ部
For Each RowList In DataGrid1.Items

Dim strRow As New System.Text.StringBuilder()

For Each CellList In RowList.Cells
If strRow.Length <> 0 Then strRow.Append(",")
strRow.Append(CellList.Text)
Next CellList

Response.Write(strRow.ToString & vbNewLine)

Next RowList

Response.End()

End Sub


[ メッセージ編集済み 編集者: damepg 編集日時 2003-06-02 16:33 ]

[ メッセージ編集済み 編集者: damepg 編集日時 2003-06-02 17:49 ]
1

スキルアップ/キャリアアップ(JOB@IT)