人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

帳票が出力された時間を日本時間でサーバ上に持っているのですが、
それを、現地時間に変換したいです。
例えば、ニューヨークの人がログインした時、
.NETの関数か何かで、変換したい時刻と、地名を引数として、
その地の時間(サマータイムも加味)が持ってこれるというのがあれば、
実現できると思うのですが、そんな関数あるのでしょうか・・・。

●質問者: inu
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:.NET サマータイム サーバ ニューヨーク ログイン
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● bg5551
●23ポイント

関数を使わなくても、時差分を足したり引いたりしてあげれば

よいのではないですか。

場所が特定されていればですけど。


2 ● degucho
●23ポイント

ややこしいですがこのへんと使えばいけると思います

http://dobon.net/vb/dotnet/system/timezone.html

http://msdn.microsoft.com/ja-jp/library/bb396326.aspx


3 ● yofukaci
●22ポイント

こんにちは、stepwgn24zさん。

.NETの関数には用意されていないので、自分で作る必要があります。

Time Zoneツールで時差を手早く計算する

http://www.atmarkit.co.jp/fwin2k/win2ktips/794timezone/timezone....


4 ● pahoo
●22ポイント

自分で関数を用意する必要があります。


Windowsをインストールするときにタイムゾーンを指定しますよね。

世界各地のタイムゾーン情報そのものはデータとして保持されており、「コンピュータ上に存在するタイム ゾーンを列挙する方法」によって取り出すことができます。

このデータを使って計算すればいいでしょう。


5 ● ardarim
●10ポイント

.NET 3.5以降では、System.TimeZoneInfoオブジェクトを使って変換することができます。

TimeZoneInfo.FindSystemTimeZoneByIdメソッドで、変換元(日本)と、変換先(現地)のタイムゾーンを取得した上で、ConvertTime メソッド (DateTime, TimeZoneInfo, TimeZoneInfo)を使うことでタイムゾーン変換を行うことができます。


TimeZoneInfo.FindSystemTimeZoneByIdメソッドは、地名を含む厳密なタイムゾーン名しか受け付けませんので、地名から緩くタイムゾーンを検索する場合は解説にあるようにGetSystemTimeZonesですべてのタイムゾーンのコレクションを取得して、この中から地名を含むタイムゾーンを探す必要があります。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ