Avatar billede sprox Nybegynder
06. maj 2002 - 02:38 Der er 5 kommentarer og
3 løsninger

Float-String

Hey
Jeg har en string med nogle bytes i, hvis jeg gerne vil udtrække dem som int f.eks. hvordan gør jeg det?

hvis det er en byte kan jeg bruge:  hej := ord(streng[3]); f.eks.

men hvad hvis der er flere ?

*gerne selve koden :)*

på forhånd tak
Avatar billede kayb Nybegynder
06. maj 2002 - 03:07 #1
Så må du gennemløbe strengen som her:

procedure TForm1.Button1Click(Sender: TObject);
Var
  Streng3 : String;
  Hej : Array[1..10] of integer;
  I,Code,Nr : Integer;
begin
  Streng3:='2345';
  For I:=1 to Length(Streng3) do
  begin
  Val(Streng3[I],Nr,Code);
  if Code=0 then Hej[I]:=Nr;
  Showmessage(IntToStr(Hej[I]));
  end;

end;
Avatar billede angelod Novice
06. maj 2002 - 03:14 #2
Eller, hvis strengen kun består af tal, så kan du benytte koden:

tal := StrToInt(streng);
Avatar billede hreiff Nybegynder
06. maj 2002 - 07:25 #3
x := StrToFloat(s)
Avatar billede sprox Nybegynder
06. maj 2002 - 16:18 #4
Hmm... jeg tror jeg har formuleret mig lidt forkert så... fordi den streng som jeg vil ha noget float ud af ku se sårn her ud :
hej|üfvD|hej

hvor der er üfvD der ska konverteres
Avatar billede hermandsen Juniormester
07. maj 2002 - 15:30 #5
Det her virker vist...

function Hest: Extended;
var
  Davs: array [1..10] of Char;
begin
  Davs := 'hejükDfj-s';
  Result := Extended(Davs);
end;

Hvad der så skal stå i Davs må du selv finde ud af! :)

//hermandsen
Avatar billede sprox Nybegynder
07. maj 2002 - 17:25 #6
tester det lige
Avatar billede sprox Nybegynder
07. maj 2002 - 17:37 #7
hmm virker ik... lukker spørgsmålet... og spørger en irl m8... tak for svarene.. selvom jeg ik fik nogen af tingene til at virke :(
Avatar billede hreiff Nybegynder
08. maj 2002 - 10:35 #8
Prøv at se på det her: (piller 4 bytes ud (efter '|') og konverterer dem til single - det kunne også være 8 bytes og double)

procedure TForm1.FormCreate(Sender: TObject);
const
  floatlength = 4;
var
  s: string;
  t: array[1..FloatLength] of char;
  i,j: integer;
  r: single;
begin
  s := 'hej|üfvD|hej';
  i := pos('|',s);
  for j := 1 to FloatLength do
    t[j] := s[i+j];
  showmessage(t);
  r := single(t);
  showmessage(FloatToStr(r));
end;
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester