0

XML を使用して Excel 2003 を動的に生成しています。

すべて正常に動作しますが、データ型 = "DateTime" で datetime を入力しようとすると、Excel が生成されず、エラーがスローされます。

sw.Write("<Cell ss:StyleID=\"s21\"><Data ss:Type=\"DateTime\">" + Convert.ToDateTime(dsReportData.Rows[i]["close_time"]).ToString("M/D/YYYY H:MM") + "</Data></Cell>\r\n");
sw.Write("<Cell ss:StyleID=\"s22\"><Data ss:Type=\"String\">" + dsReportData.Rows[i]["close_time"].ToString() + "</Data></Cell>\r\n");

最初の行のコードはエラーをスローしますが、2行目は完璧に機能しますが、データ型として「DateTime」が必要です。

回避策はありますか?

4

1 に答える 1

0

ここで文字列データ型に変換するときの Data ss:Type=\ "DateTime\" の理由

Convert.ToDateTime(dsReportData.Rows[i]["close_time"]).ToString("M/D/YYYY H:MM") ?

また、指定した形式を置き換える必要があります。交換

"M/D/YYYY H:MM" with "M d yyyy H:MM" or "M/d/yyyy H:MM".

フォーマットは大文字と小文字を区別するため

DateTime 型を保持するには、次のようにします。

Convert.ToDateTime((Convert.ToDateTime(dsReportData.Rows[i]["close_time"])).ToString("M d 
yyyy H:MM"));
于 2013-09-09T18:03:52.140 に答える