fc2ブログ

トップ  >  サンプルソース  >  DataGridView HTML出力(C#/VB.NET)

DataGridView HTML出力(C#/VB.NET)

2010年05月28日

DataGridViewにHTMLファイル出力(保存)メソッドを追加するサンプル(ソース/コード)です。こちらの DataGridViewに便利なメソッドを追加するサンプル にメソッドを追加してお試し頂けます。少し修正すればこのサンプルだけで使用出来ます。

DataGridViewに便利なメソッドを追加するその他のサンプルはこちらです。
DataGridView EXCEL読込(C#/VB.NET)
DataGridView EXCEL出力(C#/VB.NET)
DataGridView CSV読込(C#/VB.NET)
DataGridView CSV出力(C#/VB.NET)
DataGridView その他のサンプルソース

' -----------------------------------------------------------
' DataGridViewをHTML出力するサンプル(VB.NET/VS2005)
Public Sub SaveHtml(ByVal fp As String)
    ' HTMLファイルオープン
    Dim sw As IO.StreamWriter = _
        New IO.StreamWriter(fp, False, _
        System.Text.Encoding.GetEncoding("SHIFT-JIS"))

    ' HTMLファイル書込(ヘッダー部)
    sw.WriteLine("<html>")
    sw.WriteLine("<head>")
    sw.WriteLine("<meta http-equiv=""Content-Language"" ")
    sw.WriteLine("content=""ja"">")
    sw.WriteLine("<meta http-equiv=""Content-Type"" ")
    sw.WriteLine("content=""text/html;charset=shift_jis"">")
    sw.WriteLine("<title>DataGridView(VB.NET)</title>")
    sw.WriteLine("</head>")
    sw.WriteLine("<body>")
    sw.WriteLine("<table border=""1"" cellspacing=""0"" ")
    sw.WriteLine("style=""table-layout:fixed;"">")

    For r As Integer = 0 To Me.Rows.Count - 1
        ' HTMLファイル書込(各行)
        sw.Write("<tr>")
        For c As Integer = 0 To Me.Columns.Count - 1
            ' DataGridViewのセルのデータ取得
            Dim dt As String = ""
            If Me.Rows(r).Cells(c).Value _
                Is Nothing = False Then
                dt = Me.Rows(r).Cells(c).Value.ToString()
            End If
            ' HTMLエンコード
            If dt = "" Then dt = " "
            dt = dt.Replace("&", "&amp;")
            dt = dt.Replace("<", "&lt;")
            dt = dt.Replace(">", "&gt;")
            dt = dt.Replace(" ", "&nbsp;")
            ' HTMLファイル書込(各セル)
            sw.Write("<td>")
            sw.Write(dt)
            sw.Write("</td>")
        Next
        ' HTMLファイル書込(各行)
        sw.Write("</tr>")
        sw.Write(vbCrLf)
    Next

    ' HTMLファイル書込(フッター部)
    sw.WriteLine("</table>")
    sw.WriteLine("</body>")
    sw.WriteLine("</html>")

    ' HTMLファイルクローズ
    sw.Close()
End Sub
' -----------------------------------------------------------

// ----------------------------------------------------------
// DataGridViewをHTML出力するサンプル(C#.NET/VS2005)
public void SaveHtml(String fp)
{
    // HTMLファイルオープン
    StreamWriter sw =
        new StreamWriter(fp, false,
        System.Text.Encoding.GetEncoding("SHIFT-JIS"));

    // HTMLファイル書込(ヘッダー部)
    sw.WriteLine("<html>");
    sw.WriteLine("<head>");
    sw.WriteLine("<meta http-equiv=\"Content-Language\" ");
    sw.WriteLine("content=\"ja\">");
    sw.WriteLine("<meta http-equiv=\"Content-Type\" ");
    sw.WriteLine("content=\"text/html;charset=shift_jis\">");
    sw.WriteLine("<title>DataGridView(C#.NET)</title>");
    sw.WriteLine("</head>");
    sw.WriteLine("<body>");
    sw.WriteLine("<table border=\"1\" cellspacing=\"0\" ");
    sw.WriteLine("style=\"table-layout:fixed;\">");

    for (int r = 0; r <= this.Rows.Count - 1; r++)
    {
        // HTMLファイル書込(各行)
        sw.Write("<tr>");
        for (int c = 0; c <= this.Columns.Count - 1; c++)
        {
            // DataGridViewのセルのデータ取得
            String dt = "";
            if (this.Rows[r].Cells[c].Value != null)
            {
                dt = this.Rows[r].Cells[c].Value.
                    ToString();
            }
            // HTMLエンコード
            if( dt == "" ) dt = " ";
            dt = dt.Replace("&", "&amp;");
            dt = dt.Replace("<", "&lt;");
            dt = dt.Replace(">", "&gt;");
            dt = dt.Replace(" ", "&nbsp;");
            // HTMLファイル書込(各セル)
            sw.Write("<td>");
            sw.Write(dt);
            sw.Write("</td>");
        }
        // HTMLファイル書込(各行)
        sw.Write("</tr>");
        sw.Write("\n");
    }

    // HTMLファイル書込(フッター部)
    sw.WriteLine("</table>");
    sw.WriteLine("</body>");
    sw.WriteLine("</html>");

    // HTMLファイルクローズ
    sw.Close();
}
// ----------------------------------------------------------

プロセス一覧(C#/VB.NET) | トップページへ戻る | QRコード作成(ツール)

このページのトップに戻る

コメント

名前
題名
メールアドレス
WEBサイト
 
コメント
パスワード
  管理者にだけ表示を許可する

このページのトップに戻る

トラックバック

このページのトップに戻る