2011-09-23 27 views
6

Làm cách nào để đưa tệp PDF của tôi vào NSData? Tôi có vị trí của PDF dưới dạng một chuỗi trong Danh mục tài liệu của ứng dụng. Khi tôi cố gắng gửi email cho nó, tôi thấy PDF trong phần nội dung của email (khi nhìn thấy biểu tượng đính kèm. Tôi không biết đó có phải là điều bình thường hay không). Nhưng khi tôi nhận được email ở đầu bên kia, nó không có phần mở rộng PDF. Tôi đang làm gì sai? Cảm ơn.Đặt PDF vào NSData

NSString *documentsDirectory = [self GetURLForPDF]; // I know this name is bad since it is really a NSString 
NSLog(@"DocumentsDirectory: %@", documentsDirectory); 
NSString *pdfName = [NSString stringWithFormat:@"%@/%@.pdf", documentsDirectory, title]; 
NSLog(@"pdfName: %@", pdfName); 
NSData *pdfData = [NSData dataWithContentsOfFile:pdfName]; 
[mailComposer addAttachmentData:pdfData mimeType:@"application/pdf" fileName:title];  
[self presentModalViewController:mailComposer animated:YES]; 

Trả lời

9

Dựa trên cách biến pdfName đang được đặt, có vẻ như giá trị "tiêu đề" của bạn không bao gồm hậu tố PDF. Bạn đã thử:

NSString *documentsDirectory = [self GetURLForPDF]; // I know this name is bad since it is really a NSString 
NSLog(@"DocumentsDirectory: %@", documentsDirectory); 
NSString *fullTitle = [NSString stringWithFormat:@"%@.pdf", title]; 
NSString *pdfName = [NSString stringWithFormat:@"%@/%@", documentsDirectory, fullTitle]; 
NSLog(@"pdfName: %@", pdfName); 
NSData *pdfData = [NSData dataWithContentsOfFile:pdfName]; 
[mailComposer addAttachmentData:pdfData mimeType:@"application/pdf" fileName:fullTitle];  
[self presentModalViewController:mailComposer animated:YES];