Konvertieren einer Hex-Zeichenfolge in eine ASCII-Zeichenfolge in der Windows-Batchdatei [Duplikat]
In einer Windows-Batchdatei (cmd) möchte ich den Inhalt einer Hex-Zeichenfolge in das Formular konvertieren
4C6F67696300000000000000
zu seiner äquivalenten ASCII-Zeichenfolge, hier "Logik". Die Hex-Zeichenfolge ist immer gleich groß (12 Oktette). Beachten Sie, dass es nullterminiert ist, wenn die Zeichenfolge weniger als 12 Zeichen enthält. Es ist nur die Konvertierung von einfach druckbaren ASCII-Zeichen (20-7F) erforderlich. Reine Batch-Lösungen bevorzugt.
Antworten
1 mEm
Verwenden Sie das certutil
Tool, siehe certutil /?
für weitere Informationen.
setlocal enabledelayedexpansion
set "hex=4C6F67696300000000000000"
echo !hex!> temp.hex
call certutil -decodehex temp.hex str.txt >nul
set /p str=<str.txt
echo:
( del temp.hex & del str.txt )>nul
echo Your decoded string is:"!str!".
endlocal
exit /b 0