2008-11-25 129 views
16

iPhone SDK docs聲稱fopen()是一種受支持的文件訪問方法,但我無法讓它返回一個FILE句柄。我正在訪問一個包含在我的項目中的目錄。我試過fopen「文件名」,「dir /文件名」,「./文件名」,「./ dir /文件名」,「/ dir /文件名」都返回一個空指針。有些人報告沒有問題,所以我相信這是簡單的!如何在iPhone上打開()?

回答

21

如果你想你的應用程序包中訪問一個文件,你需要得到完整路徑:[[NSBundle mainBundle] pathForResource: FILENAME ofType: FILEEXTENSION]

這將返回一個NSString,你可以拉出來UTF8字符串中,並傳遞給fopen 。

22

只要是明確的打開一個文件「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"]); 
+0

尼斯的答案,怎麼看音頻的內容開放後。 – Warrior 2010-10-22 05:36:59