目次

# Eof Function

ファイルポインターがファイル末尾に到達したかを確認します。

### Syntax:

    Eof (intexpression As Integer)

### Return value:

ブール型

### Parameters:

Intexpression: オープン済みファイルを指定する整数表式。

ファイルの末尾を超えてデータを書き込もうとするとエラーが発生しますが、これを防止するには EOF 関数を使用できます。ファイル中のデータを Input ないし Get ステートメントを用いて読み取る場合は、読み込んだデータのバイト数だけファイルポインターの値が更新されます。そしてファイル末尾に到達すると、EOF 関数は「True」(-1) を返します。

### Error codes:

5 無効なプロシージャー呼び出しです

52 ファイル名または番号が不正です

### Example:

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "This is a line of text"
          Print #iNumber, "This is another line of text"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "~/data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "This is a line of text"
          Print #iNumber, "This is another line of text"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

関連項目

Close Statement

Print# Statement

Input# Statement

Open Statement