I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Lukker fordi du har løst det eller lukker fordi du ikke tror nogen svarer?
Løsningen er ret let:
uses DateUtils;
function StrDateDiff(aSt1, aSt2: string): TDateTime;
function MyStrToTime(aSt: string): TDateTime; var hh,mm,ss,s100: word; begin hh := StrToInt(copy(aSt,1,2)); mm := StrToInt(copy(aSt,4,2)); ss := StrToInt(copy(aSt,7,2)); s100 := StrToInt(copy(aSt,10,4)); result := EncodeTime(hh,mm,ss,s100); end;
var Time1, Time2: TDateTime; begin Time1 := MyStrToTime(aSt1); Time2 := MyStrToTime(aSt2); result := Time2 - Time1; end;
procedure TfrmMain.btnTestClick(Sender: TObject); begin eOutput.Text := TimeToStr(StrDateDiff(eTime1.Text,eTime2.Text)); end;
arne: Den overvejede jeg også men valgte den hårdkodede løsning, fordi jeg tit sidder med data fra eksterne kilder og der må man alligevel programmere sig ud af det - men ja. Det sidste eksempel du nævner, er en fin løsning. Et skoleeksempel.
Du får også milisekunderne med. Desværre konverterer TimeToStr dem ikke til en streng - og jeg har ikke kunne finde en der gør det; man må lave det selv:
procedure TfrmMain.btnTestClick(Sender: TObject); var hh,mm,ss,s100: word; begin DecodeTime(StrDateDiff(eTime1.Text,eTime2.Text),hh,mm,ss,s100); eOutput.Text := format('%-2d:%-2d:%-2d:%-3d',[hh,mm,ss,s100]); end;
Rettede: eOutput.Text := format('%-2d:%-2d:%-2d:%-3d',[hh,mm,ss,s100]); Til: eOutput.Text := format('%.2d:%.2d:%.2d:%.3d',[hh,mm,ss,s100]); Så virkede det lige som det skulle Læg svar for point
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.