尝试分析日期时出错
本文关键字:出错 日期 | 更新日期: 2023-09-27 18:27:53
我使用itextsharp从pdf文件中提取修改后的日期。字符串以以下格式返回:D:20120224093340
。我正试图将该字符串解析为日期时间,如下所示:
string modDate = "";
reader.Info.TryGetValue("ModDate", out modDate);
System.Globalization.CultureInfo provider =
System.Globalization.CultureInfo.InvariantCulture;
pdfModDate = DateTime.ParseExact(formattedDate, "D:yyyyddMMHHmmss", provider);
但我收到了以下错误消息:日历System.Globalization.GregorianCalendar.中不支持字符串表示的DateTime
我不知道这个错误是什么意思。这个代码应该可以工作。。。
您的月份是24,公历不支持:-)
D:20120224093340
D:yyyyddMMHHmmss
^^
尝试"D:yyyyMMddHHmmss"
。你换了天和月。
您提供的日期格式如下:
D:yyyyMMddHHmmss
不是英语格式MM/dd/yyyy
您可以尝试从字符串的开头剥离D:。ParseExact函数将大写D识别为日期格式字符串中的一个特殊字符。根据MSDN,"D"是长日期格式的缩写。
此外,您需要切换日期和月份。他们返回的顺序是年、月、日、小时、分钟、秒。
string date = "D:20120224093340";
System.Globalization.CultureInfo provider = System.Globalization.CultureInfo.InvariantCulture;
DateTime dateTime = DateTime.ParseExact(date,"D:yyyyMMddHHmmss",provider);
切换ddMM。