0

私のプロジェクトでは、すべての日付を「2013 年 7 月 26 日」などの文字列形式でデータベースに保存しています。開始月と終了月。

例: 開始日が 01/01/2013 で、終了月が 05/01/2013 の場合、{"Jan", "Feb", "Mar", "Apr", "May"} のような答えが得られるはずです。または {"01"、"02"、"03"、"04"、"05"}。コレクションを試しましたが、範囲外のエラー インデックスを受け取りました。どんな助けでも大歓迎です!

ありがとう!サラ。

4

2 に答える 2

1

Linq でこれを行う簡単な方法があると思いますが、単純なループでうまくいきます。

DateTime start = DateTime.Parse(startString);
DateTime end = DateTime.Parse(endString);
List<string> months = new List<string>();
while (start.Month <= end.Month)
{
    months.Add(start.ToString("MMM"));
    start = start.AddMonths(1);
}
string output = string.Join(",", months.ToArray());

ToString() による月出力の書式設定については、この MSDN ページを参照してください: http://msdn.microsoft.com/en-us/library/zdtaw1bw.aspx

于 2013-07-26T13:55:35.790 に答える
0

これは日付の 1 つを取得し、適切な文字列に変換します。月を取得することは問題ではありません。コンピューター上で日付が文字列に変換されたり、文字列から変換されたりする競合のために、間違っていると思います。

        string date1 = "05/01/2013";
        DateTime date = Convert.ToDateTime(date1, System.Globalization.CultureInfo.InvariantCulture);
        MessageBox.Show(date.ToString());
于 2013-07-26T13:58:09.980 に答える