ocaml에서 파일 크기를 N으로 자르는 방법은 무엇입니까?ocaml에서 파일 잘라 내기
Pervasive에서 기능이 표시되지 않습니다. 가장 가까운 것은 "open_trunc"플래그입니다. 나는 그것이 무엇을하는지 잘 모릅니다.
ocaml에서 파일 크기를 N으로 자르는 방법은 무엇입니까?ocaml에서 파일 잘라 내기
Pervasive에서 기능이 표시되지 않습니다. 가장 가까운 것은 "open_trunc"플래그입니다. 나는 그것이 무엇을하는지 잘 모릅니다.
, 당신은 "주어진 크기로 명명 된 파일을 runcates"
val Unix.truncate : string -> int -> unit
를 사용할 수 있습니다. 그러나이 기능은 Windows 버전의 OCaml에서 구현되지 않습니다 (또는 더 정확하게는 에뮬레이트되지 않습니다). 당신이 Windows에서이고 그것을 모방하려는 경우
, 당신은
val really_input : in_channel -> string -> int -> int -> unit
에 관심이있을 수있다 "
really_input ic buf pos len
문자 번호
pos
에서 시작, 문자열
buf
에 저장, 채널
ic
에서
len
문자를 읽습니다. 올리기
len
문자가 읽히기 전에 파일 끝에 도달하면
End_of_file
pos
및
len
이
buf
의 유효한 하위 문자열을 지정하지 않으면 발생합니다.
나는 맞는 것 같아. open_trunc - 쓰기 위해 명명 된 파일을 열고 해당 파일에서 파일 시작 부분에 위치하는 새 출력 채널을 반환합니다. 파일이 이미 존재하면 길이가 0으로 절단됩니다. 이미 존재하지 않으면 생성됩니다. 파일을 열 수없는 경우 Sys_error을 발생시킵니다.
이 링크 also을 참조하십시오.
Pervasives의 OS 기능은 표준 C에서 할 수있는 것과 대략적으로 일치합니다. 표준 C에서 지정된 길이로 파일을 잘라내는 기능은 없습니다. 파일을 열 때 파일을 자르면됩니다. 그것 (Open_trunc
깃발을 통해 노출). 유닉스/POSIX (truncate
)에 하나가 있으므로 truncate
함수 (또는 Unix/POSIX 다음에 다시 열린 파일에 대해 ftruncate
)가있는 Unix
module에서 찾으십시오. 유닉스에서 경우