【问题标题】:How to fopen() on the iPhone?如何在 iPhone 上使用 fopen()?
【发布时间】:2008-11-25 18:11:30
【问题描述】:

iPhone SDK 文档声称 fopen() 是一种受支持的文件访问方法,但我无法让它返回一个 FILE 句柄。我正在访问一个包含在我的项目中的目录。我试过 fopen "filename","dir/filename","./filename","./dir/filename","/dir/filename" 都返回一个空指针。有些人报告说使用它没有问题,所以我相信它很简单!

【问题讨论】:

    标签: iphone c file-io filesystems


    【解决方案1】:

    只是为了清楚打开文件“some.txt”...

    NSString * path = [[NSBundle mainBundle] pathForResource:  @"some" ofType: @"txt"];
    FILE *f = fopen([path cStringUsingEncoding:1],"r");
    if (f == NULL) NSLog([path stringByAppendingString:@" not found"]);
    

    【讨论】:

    • 很好的答案,打开后如何查看音频内容。
    • 你也可以用[path cStringUsingEncoding:1]代替path.UTF8String
    【解决方案2】:

    如果您尝试访问应用程序包中的文件,则需要获取该文件的完整路径:[[NSBundle mainBundle] pathForResource: FILENAME ofType: FILEEXTENSION]

    这会返回一个 NSString,您可以从中提取一个 UTF8String 并传递给 fopen。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-12
      • 1970-01-01
      • 1970-01-01
      • 2020-04-19
      • 2011-03-30
      • 2011-08-10
      • 1970-01-01
      相关资源
      最近更新 更多