CSV出力

RT
"
'-----------------------------------------------------------------------
    '関数名 :psSetCsv
    '
    '[機 能]CSV出力処理
    '[引  数]dtCsvData       :CSV出力データ
    '        strFile         :ファイル名前
    '[戻り値]文字列
    '[作 成]2007/02/02
    '-----------------------------------------------------------------------
    Public Sub psSetCsv(ByVal frmPage As Page, ByVal dtCsvData As DataTable, ByVal strFile As String)
        Dim objTm As System.IO.StreamWriter
        'Dim objTm As System.IO.TextWriter
        Dim strPath As StringBuilder
        Dim strLine As String = String.Empty
        Dim strP As String

        strFile = strFile & Date.Now.ToString("yyyyMMddHHmmss") & ".csv"

        'CSVパスを取得
        strPath = New StringBuilder()
        strPath.Append(frmPage.Request.ApplicationPath)
        strPath.Append("/")
        strPath.Append(System.Configuration.ConfigurationManager.AppSettings("CSVPath"))
        strPath.Append("/")
        strPath.Append(strFile)

        objTm = My.Computer.FileSystem.OpenTextFileWriter(strPath.ToString(), False, System.Text.Encoding.GetEncoding("shift_jis"))

        'ヘッダー行を生成する
        For i As Integer = 0 To dtCsvData.Columns.Count - 1
            If i = 0 Then
                strLine = """" & dtCsvData.Columns(i).ColumnName & """"
            Else
                strLine += ",""" & dtCsvData.Columns(i).ColumnName & """"
            End If
        Next
        'ヘッダーを書き込む
        objTm.WriteLine(strLine)

        For i As Integer = 0 To dtCsvData.Rows.Count - 1
            'データ行を生成する
            For j As Integer = 0 To dtCsvData.Columns.Count - 1
                If j = 0 Then
                    strLine = """" & dtCsvData.Rows(i).Item(j).ToString & """"
                Else
                    strLine += ",""" & dtCsvData.Rows(i).Item(j).ToString & """"
                End If
            Next j
            'データ行を書き込む
            objTm.WriteLine(strLine)
        Next i

        objTm.Close()

        strP = frmPage.Request.ApplicationPath
        'ダウンロード
        frmPage.ClientScript.RegisterStartupScript(frmPage.GetType(), "", _
                             "<script>window.open('" & strP & "/page/DownFile.aspx?strFile=" & strPath.ToString() & "')</script>")

    End Sub
"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值