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

 ASP.NETでのテキストファイルの書込みと読込みの方法を確認した。 09/08/12

 .NET Framework2.0からFile.WriteAllText(), File.ReadAllText()メソッド
が提供されテキストファイルのハンドリングが非常に簡単になっている。
 以下に提示したコードは冗長的になっている部分があるが、基本機能を示すサン
プルコードの提示であるので了解頂きたい。 09/08/12

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

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

textRW01.JPG

コントロールの設定値

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

【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」ボタンをクリックし、情報更新を行う。

textRW02.JPG

選択肢 投票
参考になった 0  
ふつう 0  
参考にならなかった 0  

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS