Utworzyłbym skrypt w języku Pythona, który dekoduje ciąg Base64 do tablicy bajtów (lub tablicy wartości Hex).Dekodowanie łańcucha Base64 do tablicy bajtów
Osadzona strona mojego projektu to mikrokontroler, który tworzy ciąg base64, zaczynając od surowego bajtu. Ciąg zawiera niektóre znaki niedrukowalne (z tego powodu wybieram kodowanie base64).
Po stronie komputera muszę zdekodować ciąg base64 i odzyskać oryginalne bajty surowe.
Mój skrypt korzysta z Pythona 2.7 i bibliotekę base64:
base64Packet = raw_input('Base64 stream:')
packet = base64.b64decode(base64Packet)
sys.stdout.write("Decoded packet: %s"%packet)
Powstały ciąg jest ciągiem znaków, który zawiera pewną nienadrukowalne char.
Czy istnieje sposób dekodowania łańcucha base64 na wartości bajtowe (lub szesnastkowe)?
Z góry dziękuję!
Już * masz * to bytestring. Jakich wyników oczekiwałeś i co widzisz? Być może podczas drukowania chcesz użyć '% r'? –
@MartijnPieters: Po dekodowaniu powinienem mieć listę pytonów, które zawierają każdy pojedynczy bajt. – Federico
Dlaczego tego potrzebujesz? Czy musisz manipulować bajtami? Obiekt 'str' jest już sekwencją, możesz adresować każdy bajt za pomocą' packet [index] ', na przykład, lub pętla przez ciąg z' for byte in packet: '. –