- ベストアンサー
秒の変換について困っています。
秒の変換について困っています。 やりたいことは、テキストボックス txtText1に「4830」と入力し、ボタン btnHenkanを押すと、lblText1に「1時間20分30秒」と表示させたいです。 やり方が分からず困っています。 使用している環境は、VB.Netは2005です。 ご教授願えますようお願いいたします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
http://www.atmarkit.co.jp/fdotnet/dotnettips/329timeformat/timeformat.html Private Sub btnHenkan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHenkan.Click Dim tspan As New TimeSpan(0, 0, 4830) lblText1.Text = String.Format("{0}時間{1}分{2}秒", tspan.Hours, tspan.Minutes, tspan.Seconds) End Sub
その他の回答 (4)
- hanmemomo
- ベストアンサー率35% (205/580)
VBはわかりませんが。 単純に hour=base/(60*60*1); min=base/(60*1); sec=base/1;/*要するにいらない*/ で、クリッピング処理をします。 hour%=24;/*例24時間表記*/ min%=60; sec%=60; これを表示に転送すればOKですね
- 1050 円(@1050YEN)
- ベストアンサー率69% (477/687)
連投すいません。 デバッグコード残ってた。。。。 String.Format("{0}時間{1}分{2}秒{3}", Math.Floor(tspan.TotalHours), tspan.Minutes, tspan.Seconds, tspan.Days) ↓ String.Format("{0}時間{1}分{2}秒", Math.Floor(tspan.TotalHours), tspan.Minutes, tspan.Seconds)
- 1050 円(@1050YEN)
- ベストアンサー率69% (477/687)
#2です。 スパン.Hours をそのまま使うと、24時間以上だと日に繰り上がっちゃいますね。 スパン.TotalHours を使用するようにして、分以下を切り捨てるように改造しました。 String.Format("{0}時間{1}分{2}秒{3}", Math.Floor(tspan.TotalHours), tspan.Minutes, tspan.Seconds, tspan.Days)
- ToOrisugaru
- ベストアンサー率28% (80/280)
ヒント (4830×60)/(60×60×60)≒1 時間 ((4830×60)-(60×60×60))/(60×60)≒20 分 ((4830×60)-((60×60×60)+(60×60×20))/60=30 秒
お礼
出来ました。 みなさん、アドバイスを頂きありがとうございました。