我想用格式添加所有时间:
000:00:00 00 00:00:00
set t1 [clock scan "009:05:07"]
set t2 [clock scan "023:05:55"]
set sum [expr {$y1 + $y2}]
set total [clock format $sum -format {%H:%M:%S}]
提前致谢
答案 0 :(得分:1)
clock scan
命令处理时间,而不是时间间隔。这意味着当您使用clock format
解析时间间隔时,您也会将当前时区添加到混合中,当您使用scan
转换回来时,将每个值设为经过天数的模数。加上时区发生的事情。它无法正常工作。
我认为您最想要的是使用基本的format
和set t1 "009:05:07"
set t2 "023:05:55"
# Parse the intervals
scan $t1 "%d:%d:%d" h1 m1 s1
scan $t2 "%d:%d:%d" h2 m2 s2
# Perform the arithmetic; remember that / is an integer operator here and % is the remainder
set s3 [expr {$s1 + $s2}]
set m3 [expr {$m1 + $m2 + $s3/60}]
set s3 [expr {$s3 % 60}]
set h3 [expr {$h1 + $h2 + $m3/60}]
set m3 [expr {$m3 % 60}]
# Reassemble into the output format
set total [format "%03d:%02d:%02d" $h3 $m3 $s3]
以及一些简单的算法。
Class aClass = this.getClass();
Field[] fields = aClass.getFields();
for (Field field : fields) {
String value = (obj.getJSONObject("page_1").has(field.getName())) ?
(String) obj.getJSONObject("page_1").get(field.getName()).toString() : null;
field.set(this, value);
}