String To Unsigned char
-
Hallo zusammen ich bin auf der suche wie ich den Inhalt von z.B. http://www.grabilla.com/02116-11ddcc5c-6923-469d-a07f-df9a81662955.png dieser Edit-Box in ein http://www.grabilla.com/02116-d2c4e575-49e6-4bb5-980a-77aefb6d5fba.png umwandeln kann...
Wäre wirklich sehr nett wenn mir da jemand helfen kannn.
LG. Stefan
-
- mit SubString unterteilen.
- ein "0x" vor jeden Teilstring
- StrToInt / StrToIntDef benutzen für jeden Teilstring (und nach unsigned char casten)Darauf achten, dass auch Falscheingaben möglich sein könnten.
EDIT: Beispiel (ungetestet):
(Die Pixelangaben sind in einem Edit namens Edit1)std::vector <unsigned char> Characters; // benötigt #include <vector> for (unsigned int i = 0; i < Edit1->Text.Length(); i+=3) { String NumStr = Edit1->Text.SubString(i,2); int Num = StrToIntDef("0x" + NumStr, -1); if (Num != -1) { Characters.push_back(static_cast <unsigned char> (Num)); } else { // Fehler behandeln } }
Kennst du den vector aus der STL?
EDIT: Falls nicht:
Der vector kann wie ein Array nun benutzten werden mit []
Also:Characters[0]; // Erstes Item in dem Container Characters.size(); // Länge des Containers
-
Dankeschön ich denke es wird funktionieren(du hast es sehr gut beschrieben!!! danke)... bin jetzt was essen :).
Edit:
leider fehlgeschlagen ...
03 08 00 00 61 73 64 00 48 wurde zu
03 00 00 FF 70 61 FF 77 A7
was kann das sein
-
Es kann sein, dass der verrutscht.
Ich teste den code mal und verbessere.EDIT: Eine kleine Unachtsamkeit:
die Schleife muss mit i = 1 beginnen.Dazu aus der Hilfe, falls du dich wunderst:
Hinweis: Aus Kompatibilitätsgründen zu Delphi ist die Indizierung von UnicodeString 1-basiert.