ファイルのロード・その2
ファイルのロードと言えば、おなじみなのはC標準ライブラリの fopen, fread, fclose などですが、実はMacでも普通に使えてしまいます。というか、MacOS Xではこちらがベースだと思うので、MacOS 9のCarbonを考えないのであればこれでいいのかも。楽だし。ただし、UTF-8にエンコードしたファイル名を与えなければなりません。
さきほどのCFURLRefからUTF-8のファイル名を取得するには、
char szFilename[4096];
CFURLGetFileSystemRepresentation(urlRef, true, reinterpret_cast(szFilename), 4096);
とします。バッファサイズを4096にしていることに特に理由はありません。本当は返り値を見て(boolean)エラーハンドリングをする必要があります。まー、大丈夫でしょうけど(という油断が脆弱性を生むわけですが(笑))。
その他はこのあたりを参照しましょう。
http://developer.apple.com/ja/technotes/tn2078.html
http://developer.apple.com/ja/qa/qa2001/qa1203.html
>