从我的应用通过电子邮件发送PDF时,我使用以下内容获取文件标题
NSString *date = [[NSDate date] description];
NSString *fileName = [NSString stringWithFormat:@"%@ %@.pdf", self.certificate.certificateType.title, date];
它给我一个文件名:
myfilename.pdf 2012-11-25 21:35:45 + 0000
我有没有办法摆脱+0000
?
答案 0 :(得分:2)
您通常希望避免在文件名中使用空格。
NSDate *date = [NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyy-MM-dd_HH-mm-ss";
NSString *dateString = [formatter stringFromDate:date];
NSString *fileName = [NSString stringWithFormat:@"%@_%@.pdf", self.certificate.certificateType.title, dateString];
答案 1 :(得分:1)
除了调试之外,永远不应该使用description
方法。它的实现可能随时改变(对于NSDate
,它在过去已发生变化)。
更好的解决方案是使用具有特定日期格式的NSDateFormatter
来确保结果一致。
@Eugene的答案给出了一个很好的例子。