libz & libbz2 on MinGW

| No Comments | No TrackBacks

ファイルタイプを識別するために一度 open() してちょっと読んだものを lseek() で頭に戻して、gzdopen() とか BZ2_bzdopen() とかしていたのだけど、Windows ではなんだかうまく動かなくて、gzread() とかするといきなり EOF になる。なんてこった! gzopen() とか BZ2_bzopen() は問題なく動く。

せっかく open() したファイルハンドルを捨てるのはもったいない、というエコロジー精神は、Windows の世界では通用しないらしいです。しょぼーん、と思ってたら、gzdopen() は open() するときに O_BINARY を足してやればいいみたい。でも、BZ2_bzdopen() は、一度 read() して lseek() したらうまくいかなかった...

さて、プログラム直しますか。

No TrackBacks

TrackBack URL: http://yasu2.prosou.nu/mt/mt-tb.cgi/1561

Leave a comment

OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.02

August 2010

Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

About this Entry

This page contains a single entry by Yasunori Osana published on January 13, 2008 8:07 PM.

できたー was the previous entry in this blog.

なべやき is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.