2013-05-21 52 views
-1

下面是我NSURL使用字符串,給出空值

NSString *foofile = @"/Users/alkandari/Library/Application Support/iPhone Simulator/6.1/Applications/8C445026-6387-4E40-B5A3-D1A1680666D6/Documents/ProjacsBODFiles/file_5_21.pdf" 
NSURL *url; 
if (fileExists) { 
    url = [NSURL URLWithString:foofile]; 
    NSLog(@"taking local file 1 ... %@==%@", url, foofile); 
} else { 

    url=[NSURL URLWithString:address]; 
    NSLog(@"taking internet file 1... %@", url); 
} 

當我執行,我更多的日誌如下

taking local file 1 ... (null)==/Users/alkandari/Library/Application Support/iPhone Simulator/6.1/Applications/8C445026-6387-4E40-B5A3-D1A1680666D6/Documents/ProjacsBODFiles/file_5_21.pdf 

我不明白爲什麼我收到網址爲空。正因爲如此,我無法打開文件。

任何想法爲什麼我得到的URL爲null以上?

回答

1

您將需要使用fileURLWithPath的路徑LOCALFILE系統:

NSString *foofile = @"/Users/alkandari/Library/Application Support/iPhone Simulator/6.1/Applications/8C445026-6387-4E40-B5A3-D1A1680666D6/Documents/ProjacsBODFiles/file_5_21.pdf" 
NSURL *url; 
if (fileExists) { 
    url = [NSURL fileURLWithPath:foofile]; 
    NSLog(@"taking local file 1 ... %@==%@", url, foofile); 
} else { 
... 
} 
+0

謝謝...其工作.. –

1

您也可以通過下面的代碼到達您的模擬器文件夾中的文件;

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 

NSString *libraryBaseDirectory = [paths objectAtIndex:0]; 

NSString *privateDocumentsDirectory = [libraryBaseDirectory stringByAppendingPathComponent:@"ProjacsBODFiles"];