我有一个名为“0.ball”的文件,我只想用它来存储一些坐标(我并不真的想使用Core Data,因为它看起来有点多余)。我把它放在我的项目中,但是当我尝试这样做的时候:
if ( access("0.ballpoint", F_OK) != -1) {
printf("file exists\n");
}
else {
printf("doesn't exist\n");
}它说它“不存在”。我需要输入完整的路径名吗?如果我这样做了,当我把它放在真正的iPhone/iPod Touch上时,我该怎么办?
发布于 2011-08-05 10:39:02
CoreData不适用于文件访问。还有其他可用于iPhone的文件API。请阅读NSFileManager和NSStream文档。
例如,如果您打算检查某个路径下是否存在文件,您可以使用(将您的文件添加到资源)
NSString *filePath = [[NSBundle mainBundle] pathForResource: @"0" ofType: @"ballpoint"];
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:filePath];除非你有正当的理由,否则不喜欢使用低级的东西(C文件句柄)。路径要仔细选择(因为你不能对某些路径做出假设,这些路径可能会在未来不复存在)。
话虽如此,如果您更喜欢使用C文件处理,
NSString *filePath = [[NSBundle mainBundle] pathForResource: @"0" ofType: @"ballpoint"];
FILE *fileHandle = fopen([filePath cStringUsingEncoding:NSASCIIStringEncoding],"r");发布于 2011-08-05 10:14:57
它需要成为你的应用程序的一个资源,这样在你的应用程序的使用过程中,文件就可以随时被拉取。
我不是很好的Ipod Dev教育,我更多的是一个windows phone 7开发人员,但我知道如果它还在你的电脑上,它就不能访问它,所以你需要将它导入到你的应用程序中,并使用完整的文件路径名调用它。
https://stackoverflow.com/questions/6950680
复制相似问题