파일 객체 [v1.0.90+]
파일 입/출력을 위한 인터페이스를 제공합니다. FileOpen이 이 유형의 객체를 돌려줍니다.
Read
문자열을 파일로부터 읽고 파일 포인터를 앞으로 이동시킵니다.
String := File.Read([Characters])
Characters | 읽을 문자의 최대 개수. 생략하면, 파일 나머지를 읽어서 하나의 문자열로 돌려줍니다. 콘솔 버퍼나 파이프 같이 포인터를 앞뒤로 이동시킬 수 없는 핸들로부터 파일 객체가 생성되었을 경우, 이 매개변수를 생략하면 메쏘드가 실패하거나 또는 현재 사용이 가능한 데이터만 돌려줄 가능성이 있습니다. |
Returns | 문자열. |
ReadLine
파일로부터 텍스트 한 줄을 읽고 파일 포인터를 앞으로 이동시킵니다.
Line := File.ReadLine()
Returns | 텍스트 한 줄. 여기에는 파일과 그 파일을 여는 데 사용된 EOL 플래그에 따라 `n , `r`n 또는 `r 이 포함될 수 있습니다. |
WriteLine
문자열을 씁니다. 파일을 여는 데 사용된 플래그에 따라 다음에 `n
또는 `r`n
이 따라옵니다. 파일 포인터를 앞으로 이동시킵니다.
File.WriteLine([String])
String | 선택적인 문자열. |
Returns | 씌여진 바이트 개수 (문자 개수가 아님). |
ReadNum
지정한 바이트 개수만큼 파일로부터 읽고 파일 포인터를 앞으로 이동시킵니다.
Num := File.ReadNumType()
NumType | 다음 중 하나를 함수 이름에 직접 지정합니다: UInt, Int, Int64, Short, UShort, Char, UChar, Double, 또는 Float. |
Returns | 성공하면 바이트 개수, 그렇지 않으면 빈 문자열을 돌려줍니다. |
WriteNum
지정된 바이트 개수 만큼 쓰고 파일 포인터를 앞으로 이동시킵니다.
File.WriteNumType(Num)
NumType | 다음 중 하나를 함수 이름에 직접 지정합니다: UInt, Int, Int64, Short, UShort, Char, UChar, Double, 또는 Float. |
Num | 숫자. |
Returns | 씌여진 바이트 개수. 예를 들면 WriteUInt는 성공하면 4를 돌려줍니다. |
RawRead
날 이진 데이터를 파일로부터 메모리로 읽어 들입니다. 변수가 지정되어 있으면, 필요한 경우 자동으로 확대됩니다.
File.RawRead(VarOrAddress, Bytes)
VarOrAddress | 데이터가 복사될 변수 또는 메모리 주소. 사용법은 NumGet과 비슷합니다. |
Bytes | 읽을 바이트의 최대 개수. |
Returns | 읽은 바이트 개수. |
RawWrite
날 이진 데이터를 파일에 씁니다.
File.RawWrite(VarOrAddress, Bytes)
VarOrAddress | 데이터를 담고 있는 변수 또는 메모리의 데이터 주소. 사용법은 NumPut과 비슷합니다. |
Bytes | 쓸 바이트 개수. |
Returns | 읽은 바이트 개수. |
Seek
파일 포인터를 이동시킵니다.
File.Seek(Distance [, Origin = 0]) File.Position := Distance File.Pos := Distance
Distance | 바이트 단위로 이동할 거리. 값이 낮을 수록 파일의 앞 쪽에 가깝습니다. |
Origin | 파일 포인터의 이동 시작 지점. 반드시 다음 중 하나가 되어야 합니다:
|
Returns | 성공하면 0-아닌 값을, 그렇지 않으면 0을 돌려줍니다. |
Length
파일의 크기를 열람하거나 설정합니다.
FileSize := File.Length File.Length := NewSize
NewSize | 바이트 단위로, 파일의 새 크기. |
Returns | 바이트 단위로, 파일의 크기. |
이 특성은 실제 파일에만 사용해야 합니다. 파일 객체가 파이프를 가리키는 핸들로부터 생성되었다면, 파이프의 내부 버퍼에서 현재 사용가능한 양 만큼의 데이터를 돌려줄 수 있지만, 이 행위는 보증하지 않습니다.
AtEOF
IsAtEOF := File.AtEOF
Returns | 파일 포인터가 파일의 끝에 도달하면 0 아닌 값을, 그렇지 않으면 0을 돌려줍니다. |
이 특성은 실제 파일에만 사용해야 합니다. 콘솔 버퍼나 파이프 같은 포인터-이동 없는 장치를 가리키는 핸들로부터 파일 객체가 생성되었다면, 반환 값은 의미가 없습니다. 그런 장치는 논리적으로 "파일 끝"이 없기 때문입니다.
Close
파일을 닫습니다. 캐쉬에 있는 데이터를 디스크로 비웁니다. 공유 잠금을 해제합니다. 객체가 해제되면 자동으로 파일이 닫히지만, 가능하면 빨리 닫기를 권장합니다.
File.Close()
매개변수도 없고 반환 값도 없습니다.
Encoding
이 파일 객체가 사용하는 텍스트 인코딩을 열람하거나 설정합니다.
Encoding := File.Encoding File.Encoding := Encoding
Encoding | 숫자 코드 페이지 식별자 (MSDN 참조) 또는 다음 문자열 중 하나:
인코딩은
v1.1.15.04+에서, 인코딩을 |
__Handle
File.__Handle
Returns | 시스템 파일 핸들, DllCall과 함께 사용하는 것이 목적입니다. CreateFile을 참조하십시오. |
파일 객체는 내부적으로 읽기와 쓰기를 버퍼 처리합니다. 데이터가 객체의 내부 버퍼에 씌여졌다면, 핸들을 반환하기 전에 디스크에 써야 합니다. 버퍼에 파일로부터 읽은 데이터가 들어 있다면, 그 데이터는 폐기되고 File.Pos
가 가리키는 실제 파일 포인터는 논리 위치로 재설정됩니다.