![]() |
Re: Text in Dualzahlen umwandeln
Zitat:
sWert müsste dann wohl eher ein bWert oder ein iWert sein :stupid: |
Re: Text in Dualzahlen umwandeln
Zitat:
|
Re: Text in Dualzahlen umwandeln
Hallo Leute!
danke für die ganzen Hilfen, aber iwie verzweifele ich im Moment schon an der Umwandlung eines Textes in die ascii-werte... Hier mal etwas Quelltext:
Delphi-Quellcode:
Var
S: integer ttext: string begin For s:= 1 to length(ztext) do begin ttext:= inttostr(ord(ztext[s])); // ttext:= ttext + intostr(ord(ztext[s])); end; ztext:= ttext; end; ztext ist der in ein Editfeld eingegebene Text. Nun möchte ich, dass jedes Zeichen von ztext in mit ord umgewandelt wird, dann zu einem string gemacht wird und als ttext gesetzt wird.Am Ende wird ztext dann zu ttext und ich kann mir ztext in einem editfeld wieder ausgeben lassen. Das Problem ist aber dass bei der Lösung mit "ttext:= inttostr(ord(ztext[s]));" die eig ja nur für einen Buchstaben ist, da ttext ja sonst immer wieder neu überschrieben wird, auch bei unterschiedlichen Eingaben immer die selbe Zahl 116 zurückkommt. Bei der Lösung // ttext:= ttext + intostr(ord(ztext[s])); , mit der man meiner meinung nach ja auch mehr zeichen umwandeln und wieder ausgeben können müsste, bekomme ich schon bei einer eingabe von nur einem zeichen eine 50-60 Stellige Zahl zurück! Weiß da jemand Rat und könnte mir vielleicht zeigen wie es richtig gemacht wird? |
Re: Text in Dualzahlen umwandeln
Wo und wie rufst du denn deine Routine auf?
Grundsätzlich sollte die auskommentierte Variante schon funktionieren. Die nicht auskommentierte Variante müsste normalerweise den ASCII-Wert des letzten Zeichens in ztext liefern, da du zwar eine Schleife über alle Zeichen durchläufts, aber den ermittelten Wert immer wieder überschreibst. |
Re: Text in Dualzahlen umwandeln
ich habe eine "neueklasse" erstellt, die das attribut ztext und einige methoden u.a auch "textumwandeln" besitzt.
nun habe ich in der hauptunit ztext über die methode "setztetext" aus der klasse "neueklasse" den in ein editfeld eingegebenen Text zugewiesen und rufe dann über eine buttonclick methode die prozedure "textumwandeln" auf in der der angegebene Quelltext steht. Über eine Methode gibtext der klasse "neueklasse" lasse ich dann in der hauptunit ztext wieder in einem editfeld ausgeben. Hoffe das ist verständlich formuliert^^ |
Re: Text in Dualzahlen umwandeln
versuch es doch einmal mit dieser Simpellösung:
Delphi-Quellcode:
Gruß
function Byte2Bin(inbyte:byte):string;
const bina:array [0..1] of char=('0','1'); begin result:=' '; result[1]:=bina[(inbyte shr 7) and $01]; result[2]:=bina[(inbyte shr 6) and $01]; result[3]:=bina[(inbyte shr 5) and $01]; result[4]:=bina[(inbyte shr 4) and $01]; result[5]:=bina[(inbyte shr 3) and $01]; result[6]:=bina[(inbyte shr 2) and $01]; result[7]:=bina[(inbyte shr 1) and $01]; result[8]:=bina[(inbyte and $01)]; end; procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin for i:=1 to length(label1.caption) do label2.Caption:=label2.Caption+' '+Byte2Bin(byte(label1.Caption[i])); end; K-H |
Re: Text in Dualzahlen umwandeln
Also bei mir funktioniert das problemlos:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var s: integer; ttext: string; begin for s:= 1 to length(Edit1.Text) do begin ttext:= ttext + inttostr(ord(Edit1.Text[s])); end; Label1.Caption := ttext; end; |
Re: Text in Dualzahlen umwandeln
Danke p80286 auch wenn ich die funktion, die du mir gegeben hast, absolut nicht verstehe, konnte ich es zu laufen bringen indem ich es so in die hauptunit geschrieben habe:
Delphi-Quellcode:
was jetzt nicht verstehe ist warum das ganze nicht funktioniert, wenn ich das umwandeln in eine andere klasse auslagern will...
procedure TForm1.Button3Click(Sender: TObject);
var s:integer; begin for s:= 1 to length(edit1.text) do label17.caption := label17.caption + inttostr(ord(edit1.text[s])) ; end; hat da noch jemand eine antwort drauf?wäre super wenn ihr mir das noch erklären könntet aber ich bin erstmal froh, dass es jetzt soweit bei mir klappt:) danke an alle |
Re: Text in Dualzahlen umwandeln
Was genau funktioniert denn nicht? :glaskugel:
|
Re: Text in Dualzahlen umwandeln
alles klar hat sich erledigt, ich habe den fehler selber gefunden:P
danke nochmals an alle helfer |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz