我想在我的应用程序文档文件夹中获取文件内容。所以我写下面的代码。但是此代码未在我的应用程序文档文件夹中获取文件内容。在我的文档文件夹中包含我需要的文件。
- (void) displayContents
{
NSString *folderName = [@"Object File/" stringByAppendingString:strLastpath];
NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docsDir = [dirPaths objectAtIndex:0];
databasePath = [[NSString alloc] initWithString: [docsDir stringByAppendingPathComponent:folderName]];
NSError *theError = nil;
NSFileManager *filemgr;
NSArray *filelist;
int count;
int i;
filemgr =[NSFileManager defaultManager];
filelist = [filemgr contentsOfDirectoryAtPath:databasePath error:&theError];
count = [filelist count];
for (i = 0; i < count; i++)
{
NSLog(@"%@", filelist[i]);
}
}
我得到的错误是:
2013-10-14 11:18:55.680 SampleFileCreation[1599:c07] Database Path : /Users/mac/Library/Application Support/iPhone Simulator/6.1/Applications/3B43DFF3-6699-4D68-94A6-A5153F3B1404/Documents/Object File/banana.obj
2013-10-14 11:18:55.683 SampleFileCreation[1599:c07] File Exists
2013-10-14 11:18:55.685 SampleFileCreation[1599:c07] Error : The operation couldn’t be completed. (Cocoa error 260.)
答案 0 :(得分:1)
Cocoa error 260 是一个NSFileReadNoSuchFileError,意味着在您指定的路径中找不到该文件。
问题是您的路径仍然包含编码空格(%20),因为您将其基于带路径的URL.use URL。
答案 1 :(得分:0)
试试这个:
NSString *folderName = [@"Object File/" stringByAppendingString:strLastpath];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSURL *fileURL = [[[fileManager URLsForDirectory:searchPathDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:folderName];
filelist = [filemgr contentsOfDirectoryAtPath:fileURL.path error:&theError];
答案 2 :(得分:0)
NSString *filename=[NSString stringWithFormat:@"%@.txt",textfile];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:filename];
NSURL *txtURL = [NSURL fileURLWithPath:filePath];
NSString *result= [[NSString alloc] initWithContentsOfURL:txtURL encoding:NSUTF8StringEncoding error:nil];
您可以在此处获得结果中的结果字符串。
答案 3 :(得分:0)
我找到了答案。我获取该文件的内容。 用这个。
NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docsDir = [dirPaths objectAtIndex:0];
databasePath = [[NSString alloc] initWithString: [docsDir stringByAppendingPathComponent:strLastpath]];
NSError *theError = nil;
NSString *fileStering = [[NSString alloc]initWithContentsOfFile:databasePath encoding:NSISOLatin1StringEncoding error:&theError];
答案 4 :(得分:0)
这是NSFileReadNoSuchFileError所以尝试清理你的项目并从一个干净的版本开始,如果你仍然有文件,希望你能够阅读它。