2012-01-07 22 views
1

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

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]; 

,这导致我正打算寻找价值。为什么完整的路径工作,而不是本地路径?我怎样才能使当地的道​​路工作?

回答

1

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

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

感谢您的帮助。

0

当您添加了文件到Xcode中的项目,你选择复制项目到目的地组的文件夹

+0

是的文本文件在组文件夹中。 – 2012-01-07 13:31:36

1

我认为这说明了你所需要的:

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

此外,我押注只对模拟器运行的是什么,而不是在实际的设备上(目录结构不同)。

+0

这很棒,但我可以从当地的路径获得吗?这样我就可以在模拟器和设备上进行测试。 – 2012-01-07 13:31:15

+0

模拟器还具有一个Documents目录,对应于您在设备上找到的内容。以下是解释它的链接:http://idevhub.com/where-is-the-iphone-simulator-filesystem-stored/ – 2012-01-07 15:03:15