저는 솔라리스 5.7 에서 작업을 하고있는데요..
바이너리모드로 file open을 할 수가없습니다.
my_file = open(file, O_RDONLY | O_BINARY);
이렇게 열어야 하는걸로 알고있는데요...
O_BINARY 모드 값이 없다고 에러가 뜨네염... ㅡㅡ;; (fcntl.h 에는 물론없구요.)
어떻게 해결할 수 있습니까??
유닉스 계열에서는 binary 파일과 ascii 파일의 구분이 없습니다. 따라서 open 시에도 BINARY 라고 지정할 수 없습니다.(그런 모드자체가 없으므로 header에도 당연히 지정되어 있지 않겠죠.)
그냥 O_RDONLY 만 이용해서 파일을 오픈하시면 될것입니다.
Dream, Passion and Challenge..
Unix 에서 파일을 열때 따로 Binary / text 를 구분하는 것은 없습니다.
파일 내용이 binary든 text 이든 동일한 방법으로 open(file, O_RDONLY) 해서 사용하구요.. 읽어들일때 파일 내용에 맞게 처리하면 됩니다.
from saibi
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
유닉스 계열에서는 binary 파일과 ascii 파일의 구분이 없습니다.
유닉스 계열에서는 binary 파일과 ascii 파일의 구분이 없습니다.
따라서 open 시에도 BINARY 라고 지정할 수 없습니다.(그런 모드자체가 없으므로 header에도 당연히 지정되어 있지 않겠죠.)
그냥 O_RDONLY 만 이용해서 파일을 오픈하시면 될것입니다.
Dream, Passion and Challenge..
Unix 에서 파일을 열때 따로 Binary / text 를 구분하는
Unix 에서 파일을 열때 따로 Binary / text 를 구분하는 것은 없습니다.
파일 내용이 binary든 text 이든 동일한 방법으로 open(file, O_RDONLY) 해서 사용하구요.. 읽어들일때 파일 내용에 맞게 처리하면 됩니다.
from saibi
댓글 달기