Converter string hexadecimal em string ASCII no arquivo de lote do Windows [duplicado]
Em um arquivo de lote do Windows (cmd), gostaria de converter o conteúdo de uma string hexadecimal no formato
4C6F67696300000000000000
à sua string ASCII equivalente, aqui "Lógica". A string hexadecimal tem sempre o mesmo tamanho (12 octetos). Observe que ele é terminado em nulo se a string tiver menos de 12 caracteres. É necessária apenas a conversão de caracteres ASCII para impressão simples (20-7F). Soluções puras em lote são preferidas.
Respostas
1 mEm
Use a certutil
ferramenta, veja certutil /?
para mais informações.
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
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?