メッセージボックスで正しくTimeSpan計算結果を表示させたい

こんにちは
UiPath Studio 2025.0.161 Community editionのユーザです。

ts_timeSpan1 = TimeSpan.FromHours(25)
ts_timeSpan2 = TimeSpan.FromHours(25).Add(TimeSpan.FromMinutes(30))
ts_TimeSpan_total = ts_timeSpan1.Add(ts_timeSpan2)

の時間計算をした結果、変数の値を見ると
ts_TimeSpan_total="2.02:30:00"
が入っていました。最初の2をDayとみなすと、2日2時間30分となり、25時間+25時間30分=2日2時間30分で正しく時間計算ができているように見えます。

ただ、メッセージボックスで
ts_TimeSpan_total.ToString("dd HH:mm:ss")
で計算結果を表示できませんでした。
どうすれば、メッセージボックスで正しく計算結果を表示できますか?

@gorby,

I hope you are good with the timespan addition. Use this to print the output.

String.Format("{0} days and {1} hours {2} minutes",ts_TimeSpan_total.Days, ts_TimeSpan_total.Hours,ts_TimeSpan_total.Minutes)
1 Like

Hi @gorby

Try String Format as suggested by @ashokkarale , and customize to your requirement.

For “dd HH:mm:ss”, It would be:

String.Format("{0} {1}:{2}:{3}",ts_TimeSpan_total.Days, ts_TimeSpan_total.Hours,ts_TimeSpan_total.Minutes, ts_TimeSpan_total.Seconds)

image

If you want it to be double digits like “02 02:30:00”, then try the following:

$"{ts_TimeSpan_total.Days:D2} {ts_TimeSpan_total.Hours:D2}:{ts_TimeSpan_total.Minutes:D2}:{ts_TimeSpan_total.Seconds:D2}"

The output will be:


Cheers :star_struck:

こんにちは

既に解決済みですが、書式指定文字列を使いたい場合は以下にすると良いかと思います。

ts_TimeSpan_total.ToString("dd\ hh\:mm\:ss")

いつもお世話になっております。
2点ご教示ください。

  1. 24時間表示の場合、hhはHHにしなくて良いのでしょうか?
    2.\は何をしているのでしょうか?次の文字をescapeしているようにも見えますが、dd\の次は半角スペースでescapeする必要がないように見えます。

上記のURLを参照してもらいたいのですが

24時間表示の場合、hhはHHにしなくて良いのでしょうか?

TimeSpanの書式指定子にHの定義はありません。

2.\は何をしているのでしょうか?次の文字をescapeしているようにも見えますが、dd\の次は半角スペースでescapeする必要がないように見えます。

半角スペースを半角スペースとして表示させたい場合、「エスケープしなくて良い」とはどこにも記述されていません。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.