0

カードからファイルを読み取るように MAC アプリを構築していますが、キャッシュからではなく、カードから直接読み取りたいです。ファイルのデータが変更されると、MAC アプリが新しいデータを更新できないためです。SDCard から直接ファイルを読み取るにはどうすればよいですか? 前もって感謝します。以下のコードを試しましたが、うまくいかないようです。

    NSString *url= [NSString stringWithFormat:@"%@/demo.abc"];

        const char *c_sd_url = [url UTF8String];
        NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
        FILE * fd = fopen(c_sd_url, "rb");

        if (fd)
        {

            fcntl(fd, F_GLOBAL_NOCACHE, 1);

            fseek(fd, 0, SEEK_END);
            long sz = ftell(fd);
            fseek(fd, 0, SEEK_SET);

            char *buf = malloc(sz);
            NSLog(@"before %s",buf);
            assert(buf != NULL);

            assert(fread(buf, sz, 1, fd) == 1);
            NSLog(@"after %s",buf);
            NSMutableData *data= [NSMutableData dataWithBytesNoCopy:buf length:sz freeWhenDone:YES];
            NSLog(@"%@",data);
}
4

0 に答える 0