我试图在打印文件后删除文件但没有成功。
实际上,我需要打印临时生成的PDF(带文本和图像),然后,当打印过程完成后,我想将其删除。
目前,PDF正保存在Documents目录中。将它保存在Temp文件夹中是个好主意吗?但是不管怎样我还是要删除它。 我还有一个tableView,用于显示用户已保存的PDF,因此我只需要显示那些(而不是那些暂时生成的)
我尝试过使用UIPrinterInteractionController的委托方法,但没有任何运气。
-(void)printInteractionControllerDidDismissPrinterOptions:(UIPrintInteractionController *)printInteractionController{
NSError *error;
NSFileManager *fileMgr = [NSFileManager defaultManager];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory
stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",PDFNameString]];
if ([fileMgr removeItemAtPath:filePath error:&error] != YES)
{ UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Error" message:[NSString stringWithFormat:NSLocalizedString(@"UnableToDeleteFile", @"Unable to delete file: %@"),[error localizedDescription]] delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil] autorelease];
[alert show];
}
NSLog(@"Dismissed");
}
当打印选项视图离开“发送到打印机..”视图时,会弹出警报视图。 它甚至没有删除文件,它说
可可错误代码4。
有没有人知道在打印过程完成后我可以用什么方法删除文件?
修改
如果文件存在,我会进行NSLog,但事实并非如此。这怎么可能?
答案 0 :(得分:4)
尝试(void)printInteractionControllerDidFinishJob :( UIPrintInteractionController *)printInteractionController。