FSO OpenAsTextStreamメソッド定数とサンプルコード

VB&VBA
FROG ふろっぐ
 
  • オプション

    本文印刷

    お気に入りに追加

  • 検索

    Googlewwwjp-ia
     

    Googlewwwjp-ia
     
  • 情報

  • 関連

[VB&VBA][FSO OpenAsTextStreamメソッド定数とサンプルコード]

OpenAsTextStream メソッド

指定したファイルを開き、開いたファイルの読み取り、または追加書き込みに使用できる TextStream オブジェクトを返します。

  • object.OpenAsTextStream([iomode, [format]])
  • 引数

  • object
  • 必ず指定します。File オブジェクトの名前を指定します。
  • iomode
  • 省略可能です。入出力モードを指定します。指定する値については、次の「設定値」を参照してください。
  • format
  • 省略可能です。開くファイルの形式を示す値を指定します。指定する値については、次の「設定値」を参照してください。省略した場合、ASCII ファイルとしてファイルが開かれます。
  • 設定値

引数 iomode の設定値は次のとおりです。
定数 内容
ForReading 1 ファイルを読み取り専用として開きます。このファイルには書き込むことができません。
ForWriting 2 ファイルを書き込み専用として開きます。既存ファイルがある場合、以前の内容は上書きされます。
ForAppending 8 ファイルを開き、ファイルの最後に追加して書き込みます。
引数 format の設定値は次のとおりです。
定数 内容
TristateUseDefault -2 システム デフォルトを使ってファイルを開きます。
TristateTrue -1 ファイルを Unicode ファイルとして開きます。
TristateFalse 0 ファイルを ASCII ファイルとして開きます。

解説

OpenAsTextStream メソッドは、FileSystemObject オブジェクトの OpenTextFile メソッドとほぼ同じ機能を提供します。OpenTextFile メソッドと異なるのは、ファイルを追加書き込みではなく書き込み専用に開くことができます。

サンプル

Option Explicit


Function FSOTextStream(ByVal txtPath As StringByVal Character As String)
'*******************************************
'指定したファイルの読取・追加・書込をする
'*******************************************

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0

Dim fso, f, ts

Set fso = CreateObject("Scripting.FileSystemObject")
fso.CreateTextFile txtPath  ' Create a file.
Set f = fso.GetFile(txtPath)
Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)
ts.Write Character
ts.Close
Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)
FSOTextStream = ts.ReadLine
ts.Close

End Function


Private Sub test()
FSOSetDLL 'FSO参照設定
Dim p As String
Dim m As String
Dim s As String
p = ThisWorkbook.Path
m = "test.txt"
s = "テスト"
Debug.Print FSOTextStream(p & "\" & m, s)
'テスト
End Sub






Production Japan Import Application. Since 1998