从mm / yy解析日期格式为mm-yy

时间:2018-04-09 07:41:36

标签: c# .net datetime

我想将MM/YY格式化的字符串日期转换为mm-yy DateTime。并设置为rad蒙版编辑框的值。但它回到我身边

  

" String未被识别为有效的DateTime。"

我试过

DateTime dt = DateTime.ParseExact("11/17", "MMyy", CultureInfo.InvariantCulture);

例如,我想转换03/16并将设置为MMyy的radmasked编辑框的值设为03-16

3 个答案:

答案 0 :(得分:5)

为什么你希望这个可以工作?

DateTime dt = DateTime.ParseExact("11/17", "MMyy", CultureInfo.InvariantCulture);

您收到一个字符串11/17,并尝试使用不包含任何分隔符的格式对其进行解析。

这有效:

DateTime dt = DateTime.ParseExact("11/17", "MM/yy", CultureInfo.InvariantCulture);

如果您想将其转换为具有以下格式的字符串:MMyy

string result = dt.ToString("MMyy", CultureInfo.InvariantCulture);

由于不清楚,如果你想要这个:MM-yy

 string result = dt.ToString("MM-yy", CultureInfo.InvariantCulture);
  

它为11 / 17,12 / 17工作。但不是在3/12等情况下,即   一个月是一位数。

你还没有提到月份只有一位数,但是:

DateTime dt = DateTime.ParseExact("3/17", "M/yy", CultureInfo.InvariantCulture);

答案 1 :(得分:1)

这对你有用。

DateTime dt = DateTime.ParseExact("11/17", "MM/yy", CultureInfo.InvariantCulture);

然后您可以将其转换为所需的格式

string formattedDate = dt.ToString("MM-yy");

答案 2 :(得分:0)

如果您想将分隔符'/'更改为'-' ,即如果您不需要DateTime 临时值,你可以Replace

    string source = "11/17";

    // 11-17: changing '/' to '-'
    string result = source.Replace('/', '-');