delphi 记事本记录时间操作

来源:百度知道 编辑:UC知道 时间:2024/06/02 21:22:09
在记事本里记录了一段上班时间.是这样的格式.08:00-12:00的时间里面.有可以会中断的..有什么办法可以输出.在08:00-12:00里面每一个小时里面工作了几分钟?
[lyd]
08:03=1
08:04=1
08:05=1
08:06=1
.....这里面有中段的.时间.
12:00=1
先谢谢了。
我还有个问题,。。
在里面有很多个小节名的。。类似问题 [lyd]
怎么分开读啊?

type
TTimeSet = Set of 0..59;
var
i,iPos,tHour,tMin :Integer;
TimeSet :array [0..4] of TTimeSet;
MinArray :array [0..4] of Integer;
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('d:\1.txt'); //更改参数为你的文本的路径
for i := 0 to 4 do //初始化
begin
TimeSet[i] := [];
MinArray[i] := 0;
end;
tHour := 0;
tMin := 0;
for i := 0 to sl.Count - 1 do
begin
iPos := Pos(':',sl.Strings[i]); //判断当前行数据有没含有字符":"
if iPos > 0 then
begin
try
tHour := StrToInt(Copy(sl.Strings[i],1,iPos-1)); //取当前行数据的前两个字符,也就是时
except
Continue;
end;
try
tMin := StrToInt(Copy(sl.Strings[i],iPos+1,2)); //取":"后的两个字符,也就是分
except
Continue;
end;