function StrToc(var s : String; TokenNizer : char) : String; var i : Integer; begin Result := \'\'; if Length(s) = 0 then exit; i := pos(TokenNizer,s); if i = 0 then begin Result := s; s:=\'\'; exit; end else begin Result := copy(s,1,i-1); Delete(s,1,i); end; end;
procedure TForm1.Button1Click(Sender: TObject); var s : String; begin s:= \'108/639,13/852,17/72,1/72,1/72,1\';
while s <> \'\' do Memo1.Lines.Add(StrToc(s,#47)); end;
Var OutArr : Array[1..6] Of Double; aStr : String; Index : Integer; begin aStr := InStr;
For Index := 1 To 6 Do If Pos(\'/\', aStr)>0 Then Begin OutArr[Index] := StrToFloat(Copy(aStr, 0, Pos(\'/\', aStr)-1)); Delete(aStr, 1, Pos(\'/\', aStr)); End Else OutArr[Index] := StrToFloat(aStr); end;
Jeg ser lige at output skal være som strenge. Jeg udlæste til Reals (Doubles, men den diskusion har vi haft). Output som strenge er lidt simplere, så jeg modificerer lige min kode...
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.