지정된 파일을 열고 파일에서 읽기, 쓰기 또는 파일에 추가하는 데 사용할 수 있는 TextStream 객체를 반환합니다.
구문
object.OpenAsTextStream([iomode, [format]])
인수:
Object: 필수. 항상 파일 객체의 이름입니다.
Iomode: 선택사항. 입력/출력 모드를 나타냅니다. ForReading, ForWriting 또는 ForAppending의 세 상수 중 하나일 수 있습니다.
Format: 선택사항. 열린 파일의 형식을 나타냅니다. 생략할 경우 기본적으로 파일은 Unicode로 열립니다.
Note:
형식 인수는 휴면 상태이며 VB 스크립트 동작을 모방하도록 유지됩니다. 아무런 기능도 하지 않습니다. 생성되는 모든 파일은 Unicode 형식으로만 표시됩니다.
설정
iomode 인수는 다음 설정을 포함할 수 있습니다.
Table 11-35 Iomode 인수 설정
| 상수 | 값 | 설명 |
|---|---|---|
| ForReading | 1 | 읽을 파일만 엽니다. 이 파일에는 쓸 수 없습니다. |
| ForWriting | 2 | 파일을 열어 쓰기 작업을 수행합니다. |
| ForAppending | 8 | 파일을 열고 파일의 끝에 씁니다. |
주석
OpenAsTextStream 메소드는 FileSystemObject의 OpenTextFile 메소드와 동일한 기능을 제공합니다. 또한 OpenAsTextStream 메소드를 사용하여 파일에 쓸 수 있습니다.
다음 코드는 OpenAsTextStream 메소드의 사용을 보여줍니다.
예 1
Function WriteToFile(filepath, text)
Const ForWriting = 2
Dim fso, f, ts
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filepath)
Set ts = f.OpenAsTextStream(ForWriting)
ts.Writeline text
ts.Close
End Function
' Usage
WriteToFile "C:\Path\To\Your\File.txt", "This is a test message."
예 2:
Function AppendToFile(filepath, text)
Const ForAppending = 8
Dim fso, f, ts
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filepath)
Set ts = f.OpenAsTextStream(ForAppending)
ts.WriteLine text
ts.Close
End Function
' Usage
AppendToFile "C:\Path\To\Your\File.txt", "This is additional text."
예 3:
Function WriteUnicodeToFile(filepath, text)
Const ForWriting = 2
Const TristateTrue = -1
Dim fso, f, ts
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filepath)
Set ts = f.OpenAsTextStream(ForWriting, TristateTrue)
ts.Writeline text
ts.Close
End Function
' Usage
WriteUnicodeToFile "C:\Path\To\Your\File.txt", "This is a Unicode test message."
예 4:
Function ReadFromFile(filepath)
Const ForReading = 1
Dim fso, f, ts, content
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(filepath)
Set ts = f.OpenAsTextStream(ForReading)
Do While Not ts.AtEndOfStream
content = content & ts.ReadLine
Loop
ts.Close
ReadFromFile = content
End Function
' Usage
Dim fileContent
fileContent = ReadFromFile("C:\Path\To\Your\File.txt")
'Output: Content of the File