閲覧総計:5821  (本日:1  昨日:0)

 ASP.NETでのCSVファイルの読込みの方法を確認した。 09/09/22

↓参考にしたページ:「CSVファイルを読み込むには?」06/08/16
http://www.atmarkit.co.jp/fdotnet/dotnettips/487csvparser/csvparser.html

 .NET Framework2.0からTextFieldParserクラス(Microsoft.VisualBasic.FileIO
名前空間)が提供されCSVファイルのハンドリングが非常に簡単になっている。

(背景)
 ASP.NET開発はSQL Server等のDBMSを利用する事が前提になっており、CSVファイル
の読込み方法はあまり紹介されていない。エクセルデータをASP.NETで扱いたい場合、
CSVファイルを介在することが多いので、今回確認した。

開発環境:VWD2005+AJAX1.0+Toolkit + SQL Server2005
サーバ:ASP.NET2.0+AJAX1.0 + SQL Server2005

【稼動サンプル】
http://www.kuri6005.fscs.jp/4AspNet10/Csv/CsvRead.aspx

CsvRead.JPG

※csvファイル(text.csv(S_JIS保存))は、プログラムと同じフォルダ内に置く。

コントロールの設定値

コントロールプロパティコメント
TextBox1TextModeMultiLine複数行表示に設定

【CsvRead.aspx】

<%@ Page Language="VB" %>
<%@ Import Namespace = "Microsoft.VisualBasic.FileIO" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    '↓参考にしたページ:「CSVファイルを読み込むには?」 06/08/16
    'http://www.atmarkit.co.jp/fdotnet/dotnettips/487csvparser/csvparser.html
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        
        Dim parser As New TextFieldParser(Server.MapPath("text.csv"), _
            System.Text.Encoding.GetEncoding("Shift_JIS"))
        
        parser.TextFieldType = FieldType.Delimited '固定長データではなく可変長データを宣言
        parser.SetDelimiters(",") ' 区切り文字はコンマ
        
        While Not parser.EndOfData
            Dim row As String() = parser.ReadFields() '1行読み込み
            ' 配列rowの要素は読み込んだ行の各フィールドの値
            
            For Each field As String In row
                field = field.Replace(vbCrLf, "n") ' 改行をnで表示
                field = field.Replace(" ", "_") ' 空白を_で表示
                'Console.Write(field + vbTab) ' TAB区切りで出力
                TextBox1.Text &= field & vbTab
            Next
            'Console.WriteLine()
            TextBox1.Text &= vbCrLf
        End While
    End Sub
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>無題のページ</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        CSVファイルの読込み稼働確認 09/09/21<br />
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Height="120px" TextMode="MultiLine" Width="271px"></asp:TextBox></div>
    </form>
</body>
</html>

【参考にしたページ】
1.CSVファイルを読み込むには?  06/08/16
http://www.atmarkit.co.jp/fdotnet/dotnettips/487csvparser/csvparser.html


  • 1 -- 1 2014-02-09 (日) 06:54:06
  • 1 -- 1 2014-02-07 (金) 13:14:31
  • 1 -- 1 2013-11-29 (金) 16:47:37
  • 1 -- 1 2013-02-07 (木) 22:51:11
  • 1 -- 1 2013-02-04 (月) 08:49:21
  • 1 -- 1 2013-01-11 (金) 17:45:44
  • 1 -- 1 2012-08-01 (水) 08:43:21
  • 1 -- 1 2012-03-26 (月) 12:13:29
  • 1 -- 1 2012-03-14 (水) 20:50:02
  • 1 -- 1 2011-11-16 (水) 06:40:49
    選択肢 投票
    参考になった 0  
    ふつう 0  
    参考にならなかった 0  

添付ファイル: fileCsvRead.JPG 651件 [詳細]

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-03-22 (月) 08:25:58 (305d)