0

リスト「結果」に日付を入力しています。クエリ結果では、一連の値を取得しています..日付値はこの形式です..

20120510000000000

私のコードでは、次のことを行っています..

    query = service.GetData();
    List<String> results = new List<String>();
    foreach (var item in query)
    {
        results.Add(item.InDate);  
        //This is in this format - 20120510000000000
        //Here I want to convert to mm-dd-yyyy                              
    }
    return results;

上記の日付形式を「mm/dd/yyyy」に変換して「結果」リストに投稿したいと思います。

4

3 に答える 3

3
query = service.GetData();
    List<String> results = new List<String>();
    foreach (var item in query)
    {
        var unformattedDate = item.InDate;
        var formattedDate = DateTime.ParseExact(unformattedDate,
                                    "yyyyMMddHHmmssfff",
                                    System.Globalization.CultureInfo.InvariantCulture)
        results.Add(formattedDate);                              
    }
    return results;
于 2012-05-22T02:59:36.360 に答える
2

日付が [年][月][日][時][分][秒][ミリ秒] の形式であることが保証されている場合 (そのように見えます)、単純な文字列操作を使用できます。

var newDate = item.InDate.Substring(2, 2) + "-" +
              item.InDate.Substring(4, 2) + "-" +
              item.InDate.Substring(0, 4);

DateTime オブジェクトに入れたい場合は、DateTime.ParseExact メソッドを使用できます。

var newDate = DateTime.ParseExact(indate, "yyyyMMddHHmmssfff", CultureInfo.InvariantCulture);
于 2012-05-22T02:58:22.713 に答える
0

上記の回答は正しいです。期待する日付の形式と変換して表示する日付形式を保存し、構成ファイルまたはリソースファイルに保存することをお勧めします。ハードコードするのは良くありません。

于 2012-05-22T04:24:29.763 に答える