保存

2013-01-11 63 views
1

我在我的程序生成的PDF文件設備的PDF文件,我在這裏:保存

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

    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    NSString *file = [documentsDirectory stringByAppendingFormat:@"/CEX.pdf"]; 
    NSData *data = [NSData dataWithContentsOfFile:file]; 

我知道如何將照片保存在照片庫,但不知道該怎麼用PDF文件做以及如何以及在何處將其保存在設備中。任何人都可以幫助我嗎?! :)

回答

3

您發佈的代碼用於讀取Documents目錄中的現有PDF文件。

如果要編寫PDF,您需要獲取代表PDF的NSData對象,創建文件路徑,然後使用NSData writeToFile:options:error:方法將數據保存到文件。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *file = [documentsDirectory stringByAppendingPathComponent:@"MyDocument.pdf"]; 

NSData *pdfData = ... // data representing your created PDF 
NSError *error = nil; 
if ([pdfData writeToFile:file options:NSDataWritingAtomic error:&error]) { 
    // file saved 
} else { 
    // error writing file 
    NSLog(@"Unable to write PDF to %@. Error: %@", file, error); 
} 

順便說一句 - 你的原代碼,替換:

NSString *file = [documentsDirectory stringByAppendingFormat:@"/CEX.pdf"]; 

有:

NSString *file = [documentsDirectory stringByAppendingPathComponent:@"CEX.pdf"]; 

不要使用字符串格式,除非你真的有一個字符串格式處理。