閲覧総計:&counter(); (本日:&counter(today); 昨日:&counter(yesterday);) 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 #ref(textRW01.JPG); コントロールの設定値 |~コントロール|~プロパティ|~値|~コメント| |TextBox1|TextMode|MultiLine|複数行表示に設定| 【TextRW.aspx】 <%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> '参考ページ:テキストファイルの入出力 07/04/18 'http://migelnanai.blog.so-net.ne.jp/2007-04-18-1 Protected Sub btnWrite_Click(ByVal sender As Object, ByVal e As System.EventArgs) Dim strFile As String = Server.MapPath("test01.txt") '入力するテキスト Dim strInputText As String = TextBox1.Text 'Shift_JISのファイルに書き込む。 Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift_JIS") System.IO.File.WriteAllText(strFile, strInputText, enc) End Sub Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Dim strFile As String = Server.MapPath("test01.txt") '入力するテキスト Dim strInputText As String = TextBox1.Text 'Shift_JISのファイルに書き込む。 Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift_JIS") System.IO.File.AppendAllText(strFile, strInputText, enc) End Sub Protected Sub btnRead_Click(ByVal sender As Object, ByVal e As System.EventArgs) 'Dim strFile As String = "ファイル名" Dim strFile As String = Server.MapPath("test01.txt") 'Shift_JISのファイルを読み込む。 Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift_JIS") 'テキストファイルの中身をすべて読み込む Dim strText As String = System.IO.File.ReadAllText(strFile, enc) TextBox1.Text = strText End Sub Protected Sub btnDel_Click(ByVal sender As Object, ByVal e As System.EventArgs) 'Dim strFile As String = "test01.txt" Dim strFile As String = Server.MapPath("test01.txt") '入力するテキスト Dim strInputText As String = "" TextBox1.Text = "" 'Shift_JISのファイルに書き込む。 Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift_JIS") System.IO.File.WriteAllText(strFile, strInputText, enc) End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>無題のページ</title> </head> <body> <form id="form1" runat="server"> <div> テキストファイルの書込み・読込み 09/08/12<br /> <br /> 【機能】テキストファイルの上書き書込み、追加書込<br /> み、読み出し、消去を行う。<br /> <asp:TextBox ID="TextBox1" runat="server" Height="175px" Width="327px" TextMode="MultiLine"></asp:TextBox><br /> <asp:Button ID="btnWrite" runat="server" OnClick="btnWrite_Click" Text="上書き書込み" /> <asp:Button ID="btnAdd" runat="server" Text="追加書込み" OnClick="btnAdd_Click" /> <asp:Button ID="btnRead" runat="server" Text="読出し" OnClick="btnRead_Click" /> <asp:Button ID="btnDel" runat="server" Text="消去" OnClick="btnDel_Click" /><br /> </div> </form> </body> </html> 【参考にしたページ】 1.テキストファイルの入出力 07/04/18 http://migelnanai.blog.so-net.ne.jp/2007-04-18-1 2.テキスト・ファイルの内容を簡単に書き込むには? 07/12/06 http://www.atmarkit.co.jp/fdotnet/dotnettips/680filewriteall/filewriteall.html 【サーバ設置時のハマリポイント】 txtファイルの書込み・読込みプログラムをサーバに設置した時、最初はうまく 動いてくれなかった。原因は、対象フォルダの「書き込み権限」の許可がされていな かったからだった。 皆さん、サーバ対象フォルダの「書き込み権限」の許可設定を忘れないようにしま しょう。 09/08/12 (設定操作) サーバにloginし、「ファイルのフォルダの管理(ファイルマネジャ)」で 対象プログラムを設置したフォルダのWeb Visitorの「書き込み」にチェックを付け、 「Apply」ボタンをクリックし、情報更新を行う。 #ref(textRW02.JPG); #comment_nospam #vote(参考になった[0],ふつう[0],参考にならなかった[0])