2016-04-27 11 views
-2

文字列201511072015-11-07の日付形式に変換しようとしています。ここでDateTime形式の変換

は私のコードです:

public static DateTime CustomDateFormat(this string resultdate) 
{ 
    DateTime dt = DateTime.ParseExact(resultdate, "yyyyMMdd", CultureInfo.InvariantCulture); 
    return dt; 
} 

しかし、これは、この11/07/2015 12:00:00 AMのようなものを返します。

+1

を。その文字列の値が必要な場合は、 'DateTime'を' string'に変換する必要があります。 '.ToString(" yyyy-MM-dd ")' –

答えて

1

DateTimeオブジェクト全体が返され、時間が提供されていないため、デフォルトで00:00:00.00になっているため、日付が返されます。

特定の形式で日付を返す場合は、Standard Format StringsまたはCustom Format Stringを使用できます。あなたのケースでは

、あなたはyyyy-MM-ddのカスタム形式ですので、同じように使用でき2015-11-07たい:あなたは常に時間成分を有する `DateTime`を返す

public static string CustomDateFormat(string resultdate) 
{ 
    DateTime dt = DateTime.ParseExact(resultdate, "yyyyMMdd", CultureInfo.InvariantCulture); 
    return dt.ToString("yyyy-MM-dd"); 
} 
+0

これはすでに試みられていますが、「暗黙のうちに 'string'を 'System.DateTime'」に変換することはできません。 – Qwerty

+1

メソッドのシグネチャを変更しましたか? – Steve

+0

Nope。私はしませんでした。 – Qwerty

0
public static String CustomDateFormat(this string resultdate) 
    { 
     DateTime dt = DateTime.ParseExact(resultdate, "yyyyMMdd", CultureInfo.InvariantCulture); 
     return dt.ToString("yyyy-MMM-dd"); 
    } 
関連する問題