1

私の次のコードは2つの日付をフェッチします

foreach records $get_times {
        lassign $records start_date stop_date
        puts [clock format [clock scan $start_date] \
            -format {%d %b}]
        puts [clock format [clock scan $stop_date] \
            -format {%d %b}]
}

start_tdateとstop_dateの間のすべての日付を表示する方法はありますか?何かのようなもの:

puts "<tr><td>the $start_date</td>the next Date</td><td>....</td><td>the $stop_date</td>"
4

2 に答える 2

3

start_date と stop_date の間の毎日を印刷したいという意味であると仮定すると、while ループで時計の追加を使用します。

set start_date [clock scan {2012-04-20 00:00:00} -format {%Y-%m-%d %H:%M:%S}]
set stop_date [clock scan {2012-04-24 00:00:00}  -format {%Y-%m-%d %H:%M:%S}]
while {$start_date<$stop_date} {
  set start_date [clock add $start_date 1 day]
  puts $start_date
}
于 2012-04-20T17:28:25.260 に答える
1

「英語」の時間枠を使用clock scanする の機能を使用して、探しているものを取得できます。例えば:

set start_ts [clock scan $start_date]
set end_ts [clock scan $stop_date]
for {set current $start_ts} {$current < $end_ts} {set current [clock scan "+1 day" -base $current} {
    puts [clock format $current -format {%d %b}]
}
于 2012-04-20T17:19:02.693 に答える