C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: C#のDateTimeについて


(過去ログ 96 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■57394 / inTopicNo.1)  C#のDateTimeについて
  
□投稿者/ こうへい (1回)-(2011/02/24(Thu) 20:25:12)

分類:[.NET 全般] 

C#のDateTimeについてご質問があります。
日本と海外で開発しております。
海外で開発に使用している
OSがWindows XPの英語版
ツールがVisual Studio 2003 の英語版
日本は上記が日本語版になります。

日本で作成したソースで
DateTime dtToday = DateTime.Today;
DateTime runDate = DateTime.ParseExact(today.ToShortDateString(), "yyyy/MM/dd", null);
とコードで記載されいるのですが、
日本の日付フォーマットと英語の日付フォーマットが違うために海外で実行するとエラーとなってしまいます。
ソースを修正することなく回避する方法はありますでしょうか?
どなたか、ご教授お願い致します。



引用返信 編集キー/
■57396 / inTopicNo.2)  Re[1]: C#のDateTimeについて
□投稿者/ 魔界の仮面弁士 (2100回)-(2011/02/24(Thu) 20:47:20)
No57394 (こうへい さん) に返信
> DateTime dtToday = DateTime.Today;
> DateTime runDate = DateTime.ParseExact(today.ToShortDateString(), "yyyy/MM/dd", null);

まずは、OS の日付フォーマットに合わせたいのか、
システム固定で "yyyy/MM/dd" を貫き通したいのかを決めてください。

もしも yyyy/MM/dd で統一したいなら、上記のコードでは NG です。


文字列にする場合は、
 today.ToShortDateString()
ではなく、
 today.ToString("yyyy\/MM\/dd", CultureInfo.InvariantCulture)
ですし、日付型に戻すなら
  DateTime.ParseExact("2011/02/24", "yyyy\/MM\/dd", CultureInfo.InvariantCulture)
です。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=36664&KLOG=63

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -