/// 実習F1 ファイル処理 プログラミング実習
 back next 
ファイル処理
 コンピュータに入力したデータは、コンピュータの電源を切ると消えてしまう。データを残しておくには、ファイルとしてハードディスクなどに保存しておくのが一般的である。
 ファイルからデータを読み込むにはMy.Computer.FileSystemオブジェクトを使う。
My.Computer.FileSystem.ReadAllText(ファイル名) メソッド
 ファイル名 のファイルから読み込んだすべてのデータを返却する。返却されるデータは文字型である。
My.Computer.FileSystem.WriteAllText(ファイル名, データ, 追記) メソッド
 ファイル名 のファイルにデータ を書き込む。追記 にTrueを設定するとデータ はファイルに追加書き込みされる。Falseを設定すると新規に書き込み(上書き)されるので、既存のデータは消去される。
My.Computer.FileSystem.FileExists(ファイル名) メソッド
 ファイル名 のファイルの存在を調べる。ファイルがあればTrueが返却される。
 フォルダの存在を調べる場合は、DirectoryExistsを使う。
My.Computer.FileSystem.CurrentDirectory プロパティ
 現在のディレクトリ(フォルダ)のフルパス名を取得または設定する。
 特別なフォルダのフルパス名を取得するプロパティが用意されている。
 My.Computer.FileSystem.SpecialDirectories.MyDocuments … マイドキュメント
 MyPictures … マイピクチャ
 MyMusic … マイミュージック
 Desktop … デスクトップ
【注意】  データファイルを読み書きするプログラムは、セキュリティの制限でネットワーク上のドライブからは実行できない。プログラムはローカルのドライブに保存されている必要がある。
 「ファイル処理」の実習もデータファイルを扱うので、プロジェクトの保存先はローカルのドライブにする必要がある。

プロジェクト名  実習F1テキストファイルの読み書き

説明

 [読み込み]ボタンをクリックするとtbxFNameに表示されているファイルからテキストデータを読み込み、tbxDataに表示する。
 [書き込み]ボタンをクリックするとtbxDataに入力されたテキストデータをtbxFNameに表示されているファイルに保存する。

デザイン

実習F1のデザイン フォームのプロパティ
 Font.Size = 11
 Size = 380, 350

テキストボックスtbxData
 MultiLine = True

コード(プログラム)    [終了ボタン]のメソッドは省略しています。 

Public Class Form1
    Private Sub btnFRead_Click(sender As System.Object, e As System.EventArgs) Handles btnFRead.Click
        If My.Computer.FileSystem.FileExists(tbxFName.Text) =  @   Then
            MessageBox.Show("ファイルがありません", "実習F1")
        Else
            tbxData.Text = My.Computer.FileSystem.ReadAllText( A )
        End If
    End Sub

    Private Sub btnFWrite_Click(sender As System.Object, e As System.EventArgs) Handles btnFWrite.Click
        My.Computer.FileSystem.WriteAllText(tbxFName.Text,  B , False)
    End Sub

    Private Sub tbxClear_Click(sender As System.Object, e As System.EventArgs) Handles tbxClear.Click
         C  = ""       'tbxDataの内容を消去
    End Sub

    Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        Dim nowfolder As String
        nowfolder = My.Computer.FileSystem.CurrentDirectory
        tbxFName.Text = nowfolder & "\テスト用ファイル.txt"
    End Sub
End Class

解答欄(英数字は半角で入力すること。余分な空白は入れないこと)
  @   A   B   C
   解答を入力し、[解答チェック]ボタンをクリックする。正解は   、不正解は   で表示される。

キーワード

 下線部。解説参照。

テスト

□ [読み込み] ⇒ ファイルがありませんのメッセージボックス。
□ tbxDataに入力、[書き込み]、[クリア]、[読み込み] ⇒ 読み込むことができることを確認。適当なテキストデータを入力して書き込む。
□ [クリア]、tbxDataに入力、[書き込み]、[クリア]、[読み込み] ⇒ 前に保存したデータが書き換わることを確認。

 


参考

ファイル処理2 この実習では使用しない予定
 一般的な言語でファイルを読み書きする場合は、
@ファイルを開く
A読み書きをする
Bファイルを閉じる
という手順でプログラミングする。
 VBでも同じ手順でプログラムすることができる。次のように書く。
ファイルからデータを読み込む手順
  • @ Dim rf As New System.IO.StreamReader(ファイル名)
  • A 変数 = rf.ReadLine
  • B rf.Close()
ファイルへデータを書き込む手順
  • @ Dim wf As New System.IO.StreamWriter(ファイル名)
  • A wf.WriteLine(データ)
  • B wf.Close()


 back next 
/// 実習F1 ファイル処理 Copyright©2014 Hiroshi Masuda 

 

 

inserted by FC2 system