Sagen wir, ich habe diesen Wert xxx
in hex 007800780078
Wie kann ich den Hex-Wert zurück in Zeichen mit bitweisen Operationen konvertieren? Kann ich?Konvertieren HEX in Zeichen mit bitweisen Operationen
Antwort
Ich nehme an, Sie könnte tun es mit "bitweisen" Operationen, aber es wäre wahrscheinlich eine schreckliche Durcheinander von Code sowie völlig unnötig, da ILE RPG kann es einfach mit geeigneten integrierten Funktionen tun.
Zuerst ist, dass Sie nicht genau das haben, was normalerweise als "hex" Wert betrachtet wird. Das heißt, Sie zeigen eine hexadezimale Darstellung eines Wertes an. aber die grundlegende "Hex" -Konvertierung wird kein nützliches Ergebnis liefern. Was Sie zeigen scheint ein UCS-2-Wert für "xxx" zu sein.
Hier ist ein einfaches Beispiel, das eine Umwandlung dieser Hexadezimalstring in einen Standard-Zeichenwert zeigt:
d ds
d charField 6 inz(x'007800780078')
d UCSField1 3c overlay(charField)
d TargetField s 6
d Length s 10i 0
/free
Length = %len(%trim(UCSField1));
TargetField = %trim(%char(UCSField1));
*inlr = *on;
return;
/end-free
Der Code hat einen DS, der zwei Teilfelder enthält. Der erste ist ein einfaches Zeichenfeld, das sechs Bytes Speicher initialisiert, die auf x'007800780078 initialisiert sind. Das zweite Teilfeld wird als Datentyp 'C' deklariert, um UCS-2 anzuzeigen, und es überlagert das erste Teilfeld. Da es UCS-2 ist, wird seine Größe als "3" angegeben, um drei Zeichen zu ermöglichen. (Jedes Zeichen ist 16 Bit breit.)
Die ausführbaren Anweisungen reichen nicht aus, nur um die konvertierten Werte zu testen. Wenn Sie debuggen, sollten Sie sehen, dass Length (3) und TargetField "xxx" ist.
Die eingebaute Funktion% CHAR() kann zur Konvertierung von UCS-2 in die vom Programm verwendete Zeichencodierung verwendet werden. Um in die entgegengesetzte Richtung zu gehen, verwenden Sie die integrierte Funktion% UCS2().
- 1. Char-Konvertierung in bitweisen Operationen
- 2. Warum ergeben dieselben bitweisen Operationen andere Ergebnisse?
- 3. Zeichen [hex] zu Ganzzahl
- 4. Konvertieren Zeichenfolge mit Hex ASCII-Codes zu Zeichen
- 5. C++ Extrahieren eines Zeichens aus einem Bild mit bitweisen Operationen
- 6. Wie können Strukturelemente mit bitweisen Operationen bearbeitet werden?
- 7. Konvertieren von Zeichen in CP1252 Hex in C#
- 8. So konvertieren Sie spezielle ASCII-Zeichen in Hex in Perl
- 9. RBG in HEX konvertieren
- 10. Konvertieren utf-8 Zeichen in einer Datei auf hex
- 11. Bit Umkehrung mit bitweisen
- 12. Konvertieren String in HEX auf Arduino-Plattform
- 13. java Konvertieren Hex NCRs Texte zu Unicode-Zeichen
- 14. Konvertieren von Hex in Binär
- 15. jQuery konvertieren hex in rgba
- 16. Erzeugen eines bestimmten Bitmusters mit bitweisen Operatoren
- 17. Konvertieren einer Hex-Zeichenfolge in nur Hex in Python
- 18. Konvertieren von hex in float
- 19. C# Konvertieren Zeichenfolge in hex
- 20. konvertieren Hex-Datei in Binärdatei
- 21. Q: iOS-Zeichen konvertieren in GBK-Codierung, dann in hex konvertieren, dann zu Daten
- 22. konvertieren Hex String in unsigned Char
- 23. Wie Konvertieren von Hex String Hex Anzahl
- 24. Convert String HEX Zeichen
- 25. Hex zu Binär konvertieren
- 26. Python, wie Unicode mit Hex-Zeichen dekodieren
- 27. Java String, einzelne Zeichen zu hex Bytes
- 28. awk hex konvertieren unterzeichnet dezimal
- 29. android int zu hex konvertieren
- 30. Kann Hex-Zeichen nicht loswerden
Google ist dein Freund. – Charles
Hallo @Charles, ich weiß (und fand), wie Hex-Zahlen konvertiert werden, konnte aber nichts über Strings finden. Ich weiß, dass es Tische gibt, aber ich hätte gerne eine "universelle" Art und Weise, dies zu tun. – LppEdd
CVTHC. Könnte es die Antwort sein? – LppEdd