来自文件本地的nsstring问题

时间:2012-01-07 02:29:22

标签: xcode file path nsstring

我正在制作iphone应用程序,我希望能够从文本文件中加载高分。我创建了一个名为highscores1.txt的文件,并将其添加到我的xcode项目中。当我尝试从文件中的文本创建NSString时,NSString的值为nil。这是我的代码:

    NSString *highscore1 = [NSString stringWithContentsOfFile:@"highscore1.txt" encoding:NSUTF8StringEncoding error:NULL];

我尝试将文件路径更改为完整路径,如下所示:

    NSString *highscore1 = [NSString stringWithContentsOfFile:@"/Users/deepikama/Documents/games/Dodge Cars/Dodge Cars/highscore1.txt" encoding:NSUTF8StringEncoding error:NULL];

这导致了我打算找到的价值。为什么完整路径有效但不是本地路径?如何使本地路径也能正常工作?

3 个答案:

答案 0 :(得分:1)

我认为这解释了你的需求:

http://www.techotopia.com/index.php/Working_with_Directories_on_iOS_4_(iPhone)#Identifying_the_Documents_Directory

此外,我打赌,对您有用的只是在模拟器上运行,而不是在实际设备上运行(目录结构不同)。

答案 1 :(得分:1)

我找到了一种在本地获取它的方法。我把我的代码更改为:

    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"highscore1" ofType:@"txt"];
    NSString *highscore1 = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL];

无论如何,谢谢你的帮助。

答案 2 :(得分:0)

当您在XCode中将该文件添加到项目时,您是否选择将项目复制到目标组的文件夹