File::Seek
파일 내용 위치를 조정합니다.
virtual GSErrCode Seek ( SeekOrigin so, Int64 offset );
파라미터
- so
-
offset 파라미터에 대한 원점입니다. 가능한 값들은 다음과 같습니다:
값 의미 Start 파일 내용의 시작입니다. Current 현재 파일 내용 위치입니다. End 파일 내용의 끝입니다. - offset
- 탐색 오프셋입니다. 탐색 원점(so)과 관련되어 있습니다. 오프셋의 단위는 문자(바이트)입니다.
리턴 값
값 | 의미 |
---|---|
NoError* | OK |
IllegalPosition* | 잘못된 파일 내용 위치를 지정했습니다. |
GS::OChannel::OutputIsFull | 출력 디바이스가 가득 찼습니다. |
GS::OChannel::WriteError | 출력 디바이스에서 쓰기 오류입니다. |
Error* | 불특정 오류입니다. |
* File class 범위에서 선언함
* GS 네임스페이스에서 선언했지만, 글로벌 범위에서 접근 가능함
설명
이 메소드는 파일 내용 위치를 탐색 원점(so)의 현재 값에서 offset만큼 이동한 곳으로 세트합니다. 결과로 나오는 위치는 음수가 되어서는 안 됩니다. 파일 내용의 끝 이후에 위치를 세트하는 것은 허용하지 않지만, 파일 내용의 끝으로 세트하는 것은 가능합니다. 위치 설정은 출력 버퍼들이 flush될 수 있음을 의미하므로 쓰기 오류가 발생할 수도 있습니다.
만약 파일 내용이 열려 있지 않거나 appending 모드로 열려 있다면, 이 동작은 허용하지 않습니다.
또한 쓰기 채널 (GS::OChannel) 블록 동작들 "내부"에서도 허용하지 않습니다.
(즉, 마크가 배치되었거나 오프셋이 리셋되지 않았을 때)