FileSystem.FileOpen 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
입력 또는 출력을 위한 파일을 엽니다. 이 My 기능은 파일 I/O 작업 FileOpen에서 생산성과 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.
public static void FileOpen(int FileNumber, string FileName, Microsoft.VisualBasic.OpenMode Mode, Microsoft.VisualBasic.OpenAccess Access = Microsoft.VisualBasic.OpenAccess.Default, Microsoft.VisualBasic.OpenShare Share = Microsoft.VisualBasic.OpenShare.Default, int RecordLength = -1);
static member FileOpen : int * string * Microsoft.VisualBasic.OpenMode * Microsoft.VisualBasic.OpenAccess * Microsoft.VisualBasic.OpenShare * int -> unit
Public Sub FileOpen (FileNumber As Integer, FileName As String, Mode As OpenMode, Optional Access As OpenAccess = Microsoft.VisualBasic.OpenAccess.Default, Optional Share As OpenShare = Microsoft.VisualBasic.OpenShare.Default, Optional RecordLength As Integer = -1)
매개 변수
- FileNumber
- Int32
필수 사항입니다. 유효한 파일 번호입니다. 함수를 FreeFile 사용하여 사용 가능한 다음 파일 번호를 가져옵니다.
- FileName
- String
필수 사항입니다. 파일 이름을 지정하는 문자열 식 - 디렉터리 또는 폴더 및 드라이브를 포함할 수 있습니다.
- Mode
- OpenMode
필수 사항입니다. 파일 모드를 지정하는 열거형: Append, Binary, Input, Output또는 Random. 자세한 내용은 OpenMode을 참조하십시오.
- Access
- OpenAccess
Optional. 열려 있는 파일에서 허용되는 작업을 지정하는 열거형입니다ReadWriteReadWrite. 기본값은 ReadWrite입니다. 자세한 내용은 OpenAccess을 참조하십시오.
- Share
- OpenShare
Optional. 열려 있는 파일에서 다른 프로세스에 의해 허용되지 않는 작업을 지정하는 열거형: Shared, Lock Read, Lock Write및 Lock Read Write. 기본값은 Lock Read Write입니다. 자세한 내용은 OpenShare을 참조하십시오.
- RecordLength
- Int32
Optional. 32,767(바이트)보다 작거나 같은 숫자입니다. 임의 액세스를 위해 열린 파일의 경우 이 값은 레코드 길이입니다. 순차 파일의 경우 이 값은 버퍼링된 문자 수입니다.
예외
레코드 길이는 음수이며 -1같지 않습니다.
FileName 가 이미 열려 있거나 FileName 잘못되었습니다.
예제
이 예제에서는 파일에 대한 입력 및 출력을 FileOpen 사용하도록 설정하는 함수의 다양한 용도를 보여 줍니다.
다음 코드는 파일을 TestFile 모드로 Input 엽니다.
FileOpen(1, "TESTFILE", OpenMode.Input)
' Close before reopening in another mode.
FileClose(1)
다음은 쓰기 작업에 대해서만 파일을 모드로 Binary 여는 예제입니다.
FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Write)
' Close before reopening in another mode.
FileClose(1)
다음 예제에서는 파일을 모드로 Random 엽니다. 파일에는 구조 Person체의 레코드가 포함됩니다.
Structure Person
<VBFixedString(30)> Dim Name As String
Dim ID As Integer
End Structure
Public Sub ExampleMethod()
' Count 30 for the string, plus 4 for the integer.
FileOpen(1, "TESTFILE", OpenMode.Random, , , 34)
' Close before reopening in another mode.
FileClose(1)
End Sub
이 코드 예제에서는 모드에서 Output 파일을 엽니다. 모든 프로세스는 파일을 읽거나 쓸 수 있습니다.
FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared)
' Close before reopening in another mode.
FileClose(1)
이 코드 예제에서는 읽기 모드에서 Binary 파일을 엽니다. 다른 프로세스에서는 파일을 읽을 수 없습니다.
FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
OpenShare.LockRead)
설명
이 FileOpen 함수는 이전 버전과의 호환성을 위해 제공되며 성능에 영향을 줄 수 있습니다. 레거시가 아닌 애플리케이션의 경우 개체는 My.Computer.FileSystem 더 나은 성능을 제공합니다. 자세한 내용은
I/O 작업을 수행하려면 먼저 파일을 열어야 합니다.
FileOpen 는 I/O용 버퍼를 파일에 할당하고 버퍼와 함께 사용할 액세스 모드를 결정합니다.
Important
파일에 쓸 때 애플리케이션이 작성하려는 파일이 없는 경우 파일을 만들어야 할 수 있습니다. 이렇게 하려면 파일을 만들 디렉터리에 대한 권한이 필요합니다. 그러나 지정된 FileName 파일이 있는 경우 애플리케이션에는 파일 자체에 대한 권한만 필요합니다 Write . 가능한 경우 보안을 향상하려면 배포 중에 파일을 만들고 전체 디렉터리가 아닌 해당 파일에만 권한을 부여 Write 합니다. 보안을 향상하려면 루트 디렉터리 또는 Program Files 디렉터리 대신 사용자 디렉터리에 데이터를 씁니다.
열 채널은 함수를 사용하여 FreeFile() 찾을 수 있습니다.
Important
이 함수는 FileOpenRead 부분 신뢰 상황에서의 실행에 영향을 줄 수 있는 열거형에서 FileIOPermissionAccess 액세스해야 합니다. 자세한 내용은 열거형을 참조 FileIOPermissionAccess 하세요.
적용 대상
추가 정보
- FileClose(Int32[])
- FreeFile()
Visual Basic Visual Basic