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

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

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

Re[4]: 時刻を24時間表記にする方法


(過去ログ 66 を表示中)

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

■38704 / inTopicNo.1)  時刻を24時間表記にする方法
  
□投稿者/ Yoco (4回)-(2009/07/23(Thu) 16:06:04)

分類:[VB.NET/VB2005 以降] 

たびたびお世話になります。

文字列を日付型に変換する際、時刻を24時間表記にしたいのですが
うまくいきません。

Dim dtYmd As Date = Date.ParseExact("20090608200847", "yyyyMMddHHmmss", CultureInfo.InvariantCulture)

結果:#6/10/2009 8:38:39 PM#


どのようにすれば、#6/10/2009 20:38:39# と表示されるのでしょうか?

お手数ですが、ご教授お願いいたします。
引用返信 編集キー/
■38706 / inTopicNo.2)  Re[1]: 時刻を24時間表記にする方法
□投稿者/ よねKEN (382回)-(2009/07/23(Thu) 16:15:30)
No38704 (Yoco さん) に返信
> どのようにすれば、#6/10/2009 20:38:39# と表示されるのでしょうか?

' 2009/06/10 20:38:39 の形式
Console.WriteLine(DateTime.Now.ToString("yyyy\/MM\/dd HH\:mm\:ss"))
' #6/10/2009 20:38:39# の形式
Console.WriteLine(DateTime.Now.ToString("#M\/d\/yyyy HH\:mm\:ss#"))

といったように書式指定すればよいかと思います。
引用返信 編集キー/
■38708 / inTopicNo.3)  Re[1]: 時刻を24時間表記にする方法
□投稿者/ みきぬ (551回)-(2009/07/23(Thu) 16:20:21)
Parse するときに書式を指定できたのと同様に、出力するときにも書式を指定することができます。
説明すると長くなるので、参考先をあげておきます。

.NET TIPS : 日付や時刻を文字列に変換するには?
http://www.atmarkit.co.jp/fdotnet/dotnettips/200customdate/customdate.html


# 関係ないけど、MM と mm 、HH と hh の違いは要注意ですな
引用返信 編集キー/
■38709 / inTopicNo.4)  Re[2]: 時刻を24時間表記にする方法
□投稿者/ よねKEN (383回)-(2009/07/23(Thu) 16:26:30)
補足です。

No38706 (よねKEN さん) に返信
> ' #6/10/2009 20:38:39# の形式
> Console.WriteLine(DateTime.Now.ToString("#M\/d\/yyyy HH\:mm\:ss#"))

20時の例しかなかったので、適当にHHにしてますが、一桁の時刻の場合の扱いによってはHかも。
その辺は、みきぬさん提示のURLなどを参考によろしくやってください。
引用返信 編集キー/
■38710 / inTopicNo.5)  Re[2]: 時刻を24時間表記にする方法
□投稿者/ Yoco (5回)-(2009/07/23(Thu) 16:29:50)
よねKEN さん、みきぬ さん

早速のご回答ありがとうございます☆

日付型のデータを文字列に変換せず、日付型のままで「#6/10/2009 20:38:39#」の形式にすることは不可能なのでしょうか?

Dim dtYmd As Date = Date.ParseExact("20090608200847", "yyyyMMddHHmmss", CultureInfo.InvariantCulture)

の方法では「#6/10/2009 8:38:39 PM#」となってしまうので。。。

引用返信 編集キー/
■38712 / inTopicNo.6)  Re[3]: 時刻を24時間表記にする方法
□投稿者/ よねKEN (384回)-(2009/07/23(Thu) 16:40:38)
> 日付型のデータを文字列に変換せず、日付型のままで「#6/10/2009 20:38:39#」の形式にすることは不可能なのでしょうか?

日付型そのものに書式は存在しません。あるのはあくまで文字列として表現したときの書式です。

ひょっとして、Visual Studioで変数名をマウスでポイントしたときなどに
表示される値の表示形式のことでしょうかね。

そうだとして、VisualStudioのバージョンが何かわかりませんが、
[ツール]-[オプション]の中に設定がなければ、指定できないかもしません。
#今、VBの環境がないので確認できません。

引用返信 編集キー/
■38713 / inTopicNo.7)  Re[3]: 時刻を24時間表記にする方法
□投稿者/ みきぬ (552回)-(2009/07/23(Thu) 16:42:30)
No38710 (Yoco さん) に返信
> 日付型のデータを文字列に変換せず、日付型のままで「#6/10/2009 20:38:39#」の形式にすることは不可能なのでしょうか?
>
不可能というか、そもそも日付型に書式とかいう考え方はありません。
# 基準の日時からどのくらい経過したか、という数値を持っているだけ

「#6/10/2009 8:38:39 PM#」という形式で見えるのは、それは日付型の値をそういう書式で文字列に直しているからです。
引用返信 編集キー/
■38714 / inTopicNo.8)  Re[3]: 時刻を24時間表記にする方法
□投稿者/ aetos (187回)-(2009/07/23(Thu) 16:44:21)
aetos さんの Web サイト
2009/07/23(Thu) 16:46:53 編集(投稿者)

No38710 (Yoco さん) に返信
> よねKEN さん、みきぬ さん
>
> 早速のご回答ありがとうございます☆
>
> 日付型のデータを文字列に変換せず、日付型のままで「#6/10/2009 20:38:39#」の形式にすることは不可能なのでしょうか?

DateTime 型自体は表示形式を持っていません。
表示形式とは文字列にした時にだけ意味を持つものです。

# かぶりすぎww
引用返信 編集キー/
■38716 / inTopicNo.9)  Re[4]: 時刻を24時間表記にする方法
□投稿者/ みきぬ (554回)-(2009/07/23(Thu) 16:51:02)
No38712 (よねKEN さん) に返信
> ひょっとして、Visual Studioで変数名をマウスでポイントしたときなどに
> 表示される値の表示形式のことでしょうかね。
>
なるほど、そうかも。
手元の Visual Studio 2005 で見たら確かにそういう表示になりますね。

…この書式って変えられるのかな。確かにこの書式はちとわかりにくい(馴染みがないという意味で)

# とりあえずアセンブリの言語を変えてみるも不発
引用返信 編集キー/
■38718 / inTopicNo.10)  Re[3]: 時刻を24時間表記にする方法
□投稿者/ Yoco (7回)-(2009/07/23(Thu) 16:52:55)
2009/07/23(Thu) 16:55:03 編集(投稿者)
2009/07/23(Thu) 16:55:00 編集(投稿者)

よねKEN さん、みきぬ さん

ご回答ありがとうございます☆

>日付型そのものに書式は存在しません。あるのはあくまで文字列として表現したときの書式です。
>不可能というか、そもそも日付型に書式とかいう考え方はありません。

そんなこととは知らず、全くの初心者でお恥ずかしい限りです。。。

日付の比較を行いたくて、「yyyyMMddHHmmss」の文字列を日付型に変換し、DateDiff の引数に渡していたのですが
24時間表記になっていなかったので思った結果が得られず、この質問をさせて頂いた次第です。

日付の比較の仕方について、質問しなおすことにします。。。

ありがとうございました!!

■追記
aetos さん、ありがとうございます!
この質問は、一旦「解決済み」にしておきます。

解決済み
引用返信 編集キー/
■38719 / inTopicNo.11)  Re[4]: 時刻を24時間表記にする方法
□投稿者/ aetos (188回)-(2009/07/23(Thu) 16:58:45)
aetos さんの Web サイト
2009/07/23(Thu) 16:58:54 編集(投稿者)

No38718 (Yoco さん) に返信
> 日付の比較を行いたくて、「yyyyMMddHHmmss」の文字列を日付型に変換し、DateDiff の引数に渡していたのですが
> 24時間表記になっていなかったので思った結果が得られず、この質問をさせて頂いた次第です。

おそらく原因は 24 時間表記でなかったことではないでしょう。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -