我有以下格式的日期。它始终采用这种格式。
yyyyMMdd -> 20130912
我需要将其转换为日期。但我需要确保将日期转换为 PC 的正确日期格式。Cultureinfo.InvariantCulture。这是我的代码现在的样子。
DateTime parsedDateTime;
int year = Int32.Parse(rows[row][4].ToString().Substring(0, 4));
int month = Int32.Parse(rows[row][4].ToString().Substring(4, 2));
int day = Int32.Parse(rows[row][4].ToString().Substring(6, 2));
DateTime value = new System.DateTime(year, month, day);
bool DateTimeParseFail = DateTime.TryParse(value.ToString("yyyy-MM-dd"), CultureInfo.InvariantCulture, DateTimeStyles.None, out parsedDateTime);
if (!DateTimeParseFail) {
msg = "Data Feed Convert string to DateTime: Date " + rows[row][4].ToString() + " - " + value.ToString();
ComponentMetaData.FireError(0, ComponentMetaData.Name, msg, string.Empty, 0, out pbCancel);
throw new Exception(msg);
} else {
buffer[colIndex] = parsedDateTime;
}
这对我来说看起来有点矫枉过正,我怀疑我想多了。必须有一种更简单的方法来做到这一点。但我所尝试的一切都没有像我预期的那样奏效。