How to fopen() on the iPhone?

…衆ロ難τιáo~ 提交于 2020-01-09 13:04:28

问题


The iPhone SDK docs claim fopen() is a supported method of file access but I am unable to get it to return a FILE handle. I am accessing a directory which is included in my project. I have tried fopen "filename","dir/filename","./filename","./dir/filename","/dir/filename" all returning with a null pointer. Some people report using it with no issue so I am sure it is something simple!


回答1:


if you're trying to access a file within your application bundle, you need to get the full path to it: [[NSBundle mainBundle] pathForResource: FILENAME ofType: FILEEXTENSION]

This returns an NSString, which you can pull a UTF8String out of and pass to fopen.




回答2:


Just to be clear to open a file "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"]);


来源:https://stackoverflow.com/questions/318341/how-to-fopen-on-the-iphone

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!