다음을 통해 공유


FileSystem.FilePut 메서드

정의

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem을 참조하십시오.

오버로드

FilePut(Int32, Int64, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, String, Int64, Boolean)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Object, Object, Object)
사용되지 않음.
사용되지 않음.
사용되지 않음.

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, ValueType, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Single, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Int32, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Array, Int64, Boolean, Boolean)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Double, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Decimal, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, DateTime, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Char, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Byte, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Boolean, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Int16, Int64)

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

FilePut(Int32, Int64, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, long Value, long RecordNumber = -1);
static member FilePut : int * int64 * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Long, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Int64

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, String, Int64, Boolean)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, string Value, long RecordNumber = -1, bool StringIsFixedLength = false);
static member FilePut : int * string * int64 * bool -> unit
Public Sub FilePut (FileNumber As Integer, Value As String, Optional RecordNumber As Long = -1, Optional StringIsFixedLength As Boolean = false)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
String

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

StringIsFixedLength
Boolean

선택 사항입니다. 문자열을 쓰는 경우에만 적용됩니다. 문자열에 대한 2바이트의 문자열 길이 설명자를 파일에 쓸지 여부를 지정합니다. 기본값은 False입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Object, Object, Object)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

주의

This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202

주의

FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.

주의

Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public:
 static void FilePut(System::Object ^ FileNumber, System::Object ^ Value, System::Object ^ RecordNumber);
[System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")]
public static void FilePut (object FileNumber, object Value, object RecordNumber);
[System.Obsolete("FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.")]
public static void FilePut (object FileNumber, object Value, object RecordNumber);
[System.Obsolete("Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types")]
public static void FilePut (object FileNumber, object Value, object RecordNumber = -1);
[System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")]
public static void FilePut (object FileNumber, object Value, object RecordNumber = -1);
[<System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member FilePut : obj * obj * obj -> unit
[<System.Obsolete("FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.")>]
static member FilePut : obj * obj * obj -> unit
[<System.Obsolete("Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types")>]
static member FilePut : obj * obj * obj -> unit
Public Sub FilePut (FileNumber As Object, Value As Object, RecordNumber As Object)
Public Sub FilePut (FileNumber As Object, Value As Object, Optional RecordNumber As Object = -1)

매개 변수

FileNumber
Object

필수 요소. 유효한 파일 번호입니다.

Value
Object

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Object

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

특성

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, ValueType, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, ValueType Value, long RecordNumber = -1);
static member FilePut : int * ValueType * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As ValueType, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
ValueType

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Single, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, float Value, long RecordNumber = -1);
static member FilePut : int * single * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Single, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Single

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Int32, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, int Value, long RecordNumber = -1);
static member FilePut : int * int * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Integer, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Int32

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Array, Int64, Boolean, Boolean)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, Array Value, long RecordNumber = -1, bool ArrayIsDynamic = false, bool StringIsFixedLength = false);
static member FilePut : int * Array * int64 * bool * bool -> unit
Public Sub FilePut (FileNumber As Integer, Value As Array, Optional RecordNumber As Long = -1, Optional ArrayIsDynamic As Boolean = false, Optional StringIsFixedLength As Boolean = false)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Array

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

ArrayIsDynamic
Boolean

선택 사항입니다. 배열을 쓰는 경우에만 적용됩니다. 배열을 동적으로 처리할 것인지의 여부와 길이를 설명하는 문자열에 대한 배열 설명자를 쓸 것인지의 여부를 지정합니다.

StringIsFixedLength
Boolean

선택 사항입니다. 문자열을 쓰는 경우에만 적용됩니다. 문자열에 대한 2바이트의 문자열 길이 설명자를 파일에 쓸지 여부를 지정합니다. 기본값은 False입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Double, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, double Value, long RecordNumber = -1);
static member FilePut : int * double * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Double, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Double

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Decimal, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, decimal Value, long RecordNumber = -1);
static member FilePut : int * decimal * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Decimal, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Decimal

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 1위, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 를 생략 RecordNumber하면 마지막 FileGet 또는 함수 뒤의 다음 레코드 또는 바이트가 쓰여지거나 FilePut 마지막 Seek 함수가 가리켰습니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 인 경우 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상되는 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 문자열 FilePut 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 RecordLength 레코드 길이는 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 바이트 2바이트와 데이터를 포함하는 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 작성한 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기와 크기에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수를 로 ArrayIsDynamicTrue설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위에 대한 하한을 지정합니다. 길이는 차원 수의 2배에 8배 더합니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 배열을 디스크에 쓸 때 다음 배열 선언에는 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 다른 형식의 변수인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 디스크에 쓸 때 문자열의 크기를 나타내기 위해 구조체의 문자열 필드에 특성을 적용할 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 쓸 때 잘립니다.

이진 모드

모드로 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 레코드 간에 패딩하지 않고 모든 변수를 연속적으로 디스크에 씁니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, DateTime, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, DateTime Value, long RecordNumber = -1);
static member FilePut : int * DateTime * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As DateTime, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
DateTime

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 1위, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 를 생략 RecordNumber하면 마지막 FileGet 또는 함수 뒤의 다음 레코드 또는 바이트가 쓰여지거나 FilePut 마지막 Seek 함수가 가리켰습니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 인 경우 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상되는 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 문자열 FilePut 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 RecordLength 레코드 길이는 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 바이트 2바이트와 데이터를 포함하는 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 작성한 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기와 크기에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수를 로 ArrayIsDynamicTrue설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위에 대한 하한을 지정합니다. 길이는 차원 수의 2배에 8배 더합니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 배열을 디스크에 쓸 때 다음 배열 선언에는 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 다른 형식의 변수인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 디스크에 쓸 때 문자열의 크기를 나타내기 위해 구조체의 문자열 필드에 특성을 적용할 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 쓸 때 잘립니다.

이진 모드

모드로 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 레코드 간에 패딩하지 않고 모든 변수를 연속적으로 디스크에 씁니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Char, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, char Value, long RecordNumber = -1);
static member FilePut : int * char * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Char, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Char

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 1위, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 를 생략 RecordNumber하면 마지막 FileGet 또는 함수 뒤의 다음 레코드 또는 바이트가 쓰여지거나 FilePut 마지막 Seek 함수가 가리켰습니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 인 경우 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상되는 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 문자열 FilePut 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 RecordLength 레코드 길이는 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 바이트 2바이트와 데이터를 포함하는 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 작성한 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기와 크기에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수를 로 ArrayIsDynamicTrue설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위에 대한 하한을 지정합니다. 길이는 차원 수의 2배에 8배 더합니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 배열을 디스크에 쓸 때 다음 배열 선언에는 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 다른 형식의 변수인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 디스크에 쓸 때 문자열의 크기를 나타내기 위해 구조체의 문자열 필드에 특성을 적용할 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 쓸 때 잘립니다.

이진 모드

모드로 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 레코드 간에 패딩하지 않고 모든 변수를 연속적으로 디스크에 씁니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Byte, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, byte Value, long RecordNumber = -1);
static member FilePut : int * byte * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Byte, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Byte

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 1위, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 를 생략 RecordNumber하면 마지막 FileGet 또는 함수 뒤의 다음 레코드 또는 바이트가 쓰여지거나 FilePut 마지막 Seek 함수가 가리켰습니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 인 경우 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상되는 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 문자열 FilePut 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 RecordLength 레코드 길이는 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Boolean, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, bool Value, long RecordNumber = -1);
static member FilePut : int * bool * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Boolean, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Boolean

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 위치 1, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 을 생략RecordNumber하면 마지막 또는 함수 또는 마지막 FileGetSeek 함수가 가리키는 다음 레코드 또는 FilePut 바이트가 기록됩니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 일 때 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 는 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 는 FilePut 문자열 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 레코드 길이는 RecordLength 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 는 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 는 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 2바이트 및 데이터가 포함된 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열을 포함하는 개체인 경우 개체 FilePut 의 를 식별하는 VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 쓴 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기 및 차원에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수True를 로 ArrayIsDynamic 설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위의 하한을 지정합니다. 길이는 차원 수의 2배와 8배입니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 다음 배열 선언에는 배열이 디스크에 기록되는 경우 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 변수의 다른 형식인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 특성을 구조체의 문자열 필드에 적용하여 디스크에 쓸 때 문자열의 크기를 나타낼 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 기록될 때 잘립니다.

이진 모드

모드에서 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 모든 변수를 연속적으로 디스크에 씁니다. 즉, 레코드 간에 패딩을 사용하지 않습니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상

FilePut(Int32, Int16, Int64)

Source:
FileSystem.vb
Source:
FileSystem.vb
Source:
FileSystem.vb

변수의 데이터를 디스크 파일에 씁니다. My 기능은 파일 I/O 작업에서 FilePut보다 더 나은 생산성 및 성능을 제공합니다. 자세한 내용은 FileSystem를 참조하세요.

public static void FilePut (int FileNumber, short Value, long RecordNumber = -1);
static member FilePut : int * int16 * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Short, Optional RecordNumber As Long = -1)

매개 변수

FileNumber
Int32

필수 요소. 유효한 파일 번호입니다.

Value
Int16

필수 요소. 디스크에 쓴 데이터를 포함하는 유효한 변수 이름입니다.

RecordNumber
Int64

선택 사항입니다. 쓰기를 시작할 레코드 번호(Random 모드 파일) 또는 바이트 숫자(Binary 모드 파일)입니다.

예외

RecordNumber< 1이고 -1과 같지 않은 경우

파일 모드가 잘못된 경우

예제

이 예제에서는 함수를 FilePut 사용하여 파일에 데이터를 씁니다. 구조 Person 체의 5개 레코드가 파일에 기록됩니다.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

설명

FilePut는 및 Binary 모드에서 Random 만 유효합니다.

FilePut로 작성된 데이터는 일반적으로 FileGet을 사용하여 파일에서 읽습니다.

파일의 첫 번째 레코드 또는 바이트는 1위, 두 번째 레코드 또는 바이트는 위치 2 등에 있습니다. 를 생략 RecordNumber하면 마지막 FileGet 또는 함수 뒤의 다음 레코드 또는 바이트가 쓰여지거나 FilePut 마지막 Seek 함수가 가리켰습니다.

인수는 StringIsFixedLength 함수가 문자열을 변수 또는 고정 길이로 해석하는지 여부를 제어합니다. FilePut 는 인수 True가 인 경우 길이 설명자를 작성하지 않습니다. 와 함께 FilePut사용하는 StringIsFixedLength = True 경우 에서 동일한 FileGet작업을 수행해야 하며 문자열이 예상되는 길이로 초기화되었는지 확인해야 합니다.

임의 모드

모드로 Random 열린 파일의 경우 다음 규칙이 적용됩니다.

  • 기록되는 데이터의 길이가 함수 FilePutFileOpenRecordLength 지정된 길이보다 작으면 레코드 길이 경계에 후속 레코드를 씁니다. 한 레코드의 끝과 다음 레코드의 시작 사이의 공간은 파일 버퍼의 기존 내용으로 채워집니다. 패딩 데이터의 양은 확실하게 확인할 수 없으므로 일반적으로 레코드 길이가 기록되는 데이터의 길이와 일치하도록 하는 것이 좋습니다. 기록되는 데이터의 길이가 함수 절 FileOpenRecordLength 지정된 길이보다 크면 예외가 throw됩니다.

  • 작성 중인 변수가 문자열인 경우 문자열 FilePut 길이가 포함된 2 바이트 설명자를 작성한 다음 변수로 들어가는 데이터를 씁니다. 따라서 함수의 절에 FileOpen 지정된 RecordLength 레코드 길이는 문자열의 실제 길이보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 숫자 형식 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는 VarType 2바이트를 쓴 다음 변수를 씁니다. 예를 들어 정수가 포함된 개체를 작성할 때 6바이트를 씁니다. 즉, FilePut 개체를 (Integer)로 VarType(3) 식별하는 바이트 2바이트와 데이터를 포함하는 4바이트를 씁니다. 함수의 RecordLength 매개 변수에 FileOpen 지정된 레코드 길이는 변수를 저장하는 데 필요한 실제 바이트 수보다 2바이트 이상 커야 합니다.

  • 작성 중인 변수가 문자열 FilePut 을 포함하는 개체인 경우 개체의 를 식별하는VarType(8) 2 바이트 설명자, 문자열의 길이를 나타내는 2 바이트 설명자를 작성한 다음 문자열 데이터를 씁니다. 함수의 RecordLength 매개 변수 FileOpen 에 지정된 레코드 길이는 문자열의 실제 길이보다 4바이트 이상 커야 합니다. 설명자 없이 문자열을 배치하려면 매개 변수에 StringIsFixedLength 전달 True 해야 하며 읽은 문자열은 올바른 길이여야 합니다.

  • 작성 중인 변수가 배열인 경우 배열의 크기와 크기에 대한 설명자를 작성할지 여부를 선택할 수 있습니다. Visual Basic 6.0 및 이전 버전은 동적 배열에 대한 파일 설명자를 작성하지만 고정 크기 배열에는 쓰지 않습니다. Visual Basic 2005는 기본적으로 설명자를 작성하지 않습니다. 설명자를 작성하려면 매개 변수를 로 ArrayIsDynamicTrue설정합니다. 배열을 작성할 때 배열을 읽는 방식과 일치해야 합니다. 설명자를 사용하여 읽는 경우 설명자를 작성해야 합니다. 설명자는 배열의 순위, 크기 및 각 순위에 대한 하한을 지정합니다. 길이는 차원 수의 2배에 8배 더합니다(2 + 8 * NumberOfDimensions). 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 배열 데이터 및 배열 설명자를 작성하는 데 필요한 모든 바이트의 합계보다 크거나 같아야 합니다. 예를 들어 배열을 디스크에 쓸 때 다음 배열 선언에는 218바이트가 필요합니다.

    Dim MyArray(4, 9) As Integer
    
  • 작성 중인 변수가 다른 형식의 변수인 경우(가변 길이 문자열 또는 개체가 아님) FilePut 변수 데이터만 씁니다. 함수의 RecordLength 절에 FileOpen 지정된 레코드 길이는 기록되는 데이터의 길이보다 크거나 같아야 합니다.

  • FilePut 는 요소 사이에 패딩이 없다는 점을 제외하고 구조체의 요소를 개별적으로 작성한 것처럼 씁니다. VBFixedString 디스크에 쓸 때 문자열의 크기를 나타내기 위해 구조체의 문자열 필드에 특성을 적용할 수 있습니다.

    참고

    특성에 지정된 것보다 많은 바이트가 있는 문자열 필드는 디스크에 VBFixedString 쓸 때 잘립니다.

이진 모드

모드로 Binary 열린 파일의 경우 일부 예외를 Random 제외하고 대부분의 모드 규칙이 적용됩니다. 모드에서 Binary 열린 파일에 대한 다음 규칙은 모드에 대한 Random 규칙과 다릅니다.

  • RecordLength 함수의 FileOpen 절은 영향을 주지 않습니다. FilePut 는 레코드 간에 패딩하지 않고 모든 변수를 연속적으로 디스크에 씁니다.

  • 구조 FilePut 체의 배열 이외의 배열에 대해 는 데이터만 씁니다. 설명자가 작성되지 않았습니다.

  • FilePut 는 2 바이트 길이 설명자가 없는 구조체의 요소가 아닌 가변 길이 문자열을 씁니다. 작성된 바이트 수는 문자열의 문자 수와 같습니다. 예를 들어 다음 문은 파일 번호 1에 11바이트를 씁니다.

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • 함수를 사용하여 FilePut 파일에 쓰려면 열거형에서 FileIOPermissionAccess 액세스해야 합니다Write.

추가 정보

적용 대상