2012-08-23 2 views
0

У меня встроенный Dropbox в моем приложении. Я добираюсь до того момента, когда он отображает файлы для пользователя, и они могут выбирать те, которые нужно загрузить. Я знаю, что мне нужно вызвать эту строку, но я не знаю, что такое локальный путь к файлу на iPhone. Это только должно быть временным, потому что, как только у меня есть текстовый файл, я обработаю его ... Мой вопрос - это путь к локальному файлу. Заранее спасибо.IP-адрес локального файла

[[self restClient] loadFile:[filePaths objectAtIndex:indexPath.row] intoPath:localPath] 

ОБНОВЛЕНО НА ОСНОВЕ ОТВЕТОВ пыльник ::: ЕЩЕ НЕ РАБОТАЕТ

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 
    NSString *localPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingString:[filePaths objectAtIndex:indexPath.row]]; 
    [[self restClient] loadFile:[filePaths objectAtIndex:indexPath.row] intoPath:localPath]; 
    NSLog(@"%@",[NSString stringWithContentsOfFile:localPath encoding:NSUTF8StringEncoding error:nil]); 

} 

ответ

0

вы обычно просто использовать локальный каталог документа.

Попробуйте это:

NSString *localPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingString:[filePaths objectAtIndex:indexPath.row]];

+0

Нагрузочный приложение из-за неперехваченного исключением «NSInvalidArgumentException», причина: «*** - [NSPathStore2 stringByAppendingString]: ноль аргумент» – BDGapps

+0

взгляд на то, как я использую его выше ... – BDGapps

+0

вы уверены, что ' [filePaths objectAtIndex: indexPath.row] 'не является нулевым? – Sebrassi

0

Вы, наверное, ищете:

NSString * tempPath = [NSSearchPathForDirectoriesInDomains(NSTemporaryDirectory(), NSUserDomainMask, YES) objectAtIndex:0]; 
NSString * yourFile = [filePaths objectAtIndex:indexPath.row]; 

if(yourFile != nil) { 
    NSString * filePath = [tempPath stringByAppendingPathComponent:yourFile]; 
} 
else { 
    // Check your file 
} 
0

По историческим причинам потребность во временную директорию существовали в Unix задолго до того, Objective-C. Таким образом, способ получить каталог temp на нашем языке создан поверх существующего метода Unix с использованием confstr. Это также в NSPathUtilities для вашего удобства.

NSString *tmpDirectory = NSTemporaryDirectory(); 
NSString *tmpFile = [tmpDirectory stringByAppendingPathComponent:@"temp.txt"]; 
Смежные вопросы