AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Buchstaben in Zahlen umwandeln

Ein Thema von sender01 · begonnen am 9. Dez 2006 · letzter Beitrag vom 9. Dez 2006
Antwort Antwort
sender01

Registriert seit: 3. Dez 2006
6 Beiträge
 
Delphi 7 Personal
 
#1

Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:21
Über die serielle Schnittstelle empfange ich Daten. Die erhaltenen binären Zahlen werden direkt in Buchstaben, Zeichen (nehme mal an, dass das entsprechend der ASCII-Tabelle läuft) usw. umgeformt. Jetzt würde ich gerne diese Zeichen wieder zurück in Integer umwandeln. Mit "StrtoInt" funktioniert das aber nicht.
Hat jemand eine Idee?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:22
Val()
Markus Kinzler
  Mit Zitat antworten Zitat
sender01

Registriert seit: 3. Dez 2006
6 Beiträge
 
Delphi 7 Personal
 
#3

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:32
Hmm...
In der Delphi-Hilfe klingt die Erklärung zu Val() schonmal ein bisschen nachdem, was ich machen will. Werde aus dieser Erklärung aber nicht ganz schlau, wie ich diese Funktion einsetze. Ein Beispiel wäre hilfreich.
Die Hilfe sagt, dass die umzuwandelnde Variable eine reelle Zahl sein muss. Ich will aber auch Buchstaben in Zahlen umwandeln. Die ASCII-Tabelle ordnet den Zahlen von 0 bis 255 ein Zeichen zu. Diese Zeichen erhalte ich und will nun ihre ASCII-Nummer haben.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:36
Zitat von sender01:
Hmm...
In der Delphi-Hilfe klingt die Erklärung zu Val() schonmal ein bisschen nachdem, was ich machen will. Werde aus dieser Erklärung aber nicht ganz schlau, wie ich diese Funktion einsetze. Ein Beispiel wäre hilfreich.
Die Hilfe sagt, dass die umzuwandelnde Variable eine reelle Zahl sein muss. Ich will aber auch Buchstaben in Zahlen umwandeln. Die ASCII-Tabelle ordnet den Zahlen von 0 bis 255 ein Zeichen zu. Diese Zeichen erhalte ich und will nun ihre ASCII-Nummer haben.
Dazu kannst Du ord() hernehmen, aber da das alles über die serielle Schnittstelle geht
ist es dann nicht möglich gleich die Zeichen als Byte zu lesen, dann brauchst Du nichts mehr umwandeln.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:40
Ich habe die Fragestellung falsch verstanden. Ord() ist natürlich in diesem Fall richtig.
Markus Kinzler
  Mit Zitat antworten Zitat
sender01

Registriert seit: 3. Dez 2006
6 Beiträge
 
Delphi 7 Personal
 
#6

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:51
Die Idee es direkt als Byte zu lesen ist gut, aber leider nicht zu machen, glaube ich...
Ich benutze SerialNG zum ansteuern der Schnittstelle. Da gibt es leider nur die Funktion "ReadNextClusterAsString". Die eingehenden Daten werden also direkt in einen string umgewandelt.
Zu Ord(X) sagt die Delphi-Hilfe, dass X ein Delphi-Ausdruck des Typs Ordinal sei.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
str: string;
int: real;
begin
str:= Edit1.Text; //Empfangene Zeichen
int:= ord(str);
end;
Wenn ich dass mache, kommt die Meldung : Inkompatible Typen.

Irgendwie muss es doch gehen...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:53
int:= ord(str[1]);
Markus Kinzler
  Mit Zitat antworten Zitat
sender01

Registriert seit: 3. Dez 2006
6 Beiträge
 
Delphi 7 Personal
 
#8

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 20:59
Vielen Dank mkinzler!!
Jetzt klappt es wunderbar!

Finde es nur komisch, dass z.B. der 0 die Nummer 48 zugeordnet ist.
Aber das muss wohl so sein...

Damit bin ich schonmal voll zufrieden.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 21:06
Was meinst du mit der 0?
Markus Kinzler
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Buchstaben in Zahlen umwandeln

  Alt 9. Dez 2006, 21:16
Zitat von mkinzler:
Was meinst du mit der 0?
Er meint den Character '0'. Das liegt einfach nur daran, dass andere Zeichen eine niedrigere Ordinal-Position haben. Man könnte ja auch argumentieren, die Buchstaben 'A' bis 'Z' sollen auf die Positionen 1 bis 26. Sind sie aber auch nicht. Mit irgendwas muss man ja anfangen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz