Уведомления

Jabber-конференция сообщества: pythonua@conference.jabber.ru

#1 Март 22, 2017 15:04:49

Svet
Зарегистрирован: 2016-08-09
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл hexadecimal формат (python 1.5.2)

Всем привет.
Модуль использует python 1.5.2
Я по FTP получаю файл в hexadecimal формате.

 вот такого вида длиной ~2500
994E0D0A01E78E5863000000002100000073D00A00006400005A00006B01005A01006B02005
Это файл присланный с сервера в hexadecimal формате, который нужно записать в файл, чтобы открыв файл можно было увидеть текст.
Пробовал вот так:
 f = open('222_in.txt', 'wb')
s = '994E0D0A01E78E5863000000002100000073D00A00006400005A00006B01005A01006B02005'
f.write(s)
f.close()
Получаю при открытии файла на чтение тот же текст в виде 994E0D0A01…. А хотелось бы приведенный текст…
Подскажите как это сделать?
Внешние библиотеки и команды от более свежего python не работают.

Отредактировано Svet (Март 22, 2017 15:11:02)

Офлайн

#2 Март 22, 2017 16:45:03

vic57
Зарегистрирован: 2015-07-07
Сообщения: 383
Репутация: +  57  -
Профиль   Отправить e-mail  

Запись в файл hexadecimal формат (python 1.5.2)

Svet
А хотелось бы приведенный текст…
какой именно текст? ты текст и видишь
записал строку и прочитал строку

Офлайн

#3 Март 23, 2017 08:08:12

Svet
Зарегистрирован: 2016-08-09
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл hexadecimal формат (python 1.5.2)

vic57
какой именно текст?
Вот пример.
Получаю строку:
 48656C6C6F212121210D0A5275737369610D0A313233343536373839373938373938373938373635343635340D0A313233313331333231333231333231333133323133323133323434
В которой содержится:
 Hello!!!!
Russia
1234567897987987987654654
123131321321321313213213244

Офлайн

#4 Март 24, 2017 19:15:44

vic57
Зарегистрирован: 2015-07-07
Сообщения: 383
Репутация: +  57  -
Профиль   Отправить e-mail  

Запись в файл hexadecimal формат (python 1.5.2)

 >>> s ='48656C6C6F212121210D0A5275737369610D0A313233343536373839373938373938373938373635343'
>>> for i in xrange(0,len(s),2): print chr(int(s[i:i+2],16)),
H e l l o ! ! ! ! 
R u s s i a 
1 2 3 4 5 6 7 8 9 7 9 8 7 9 8 7 9 8 7 6 5 4 
>>> 

Офлайн

#5 Март 27, 2017 10:25:59

Svet
Зарегистрирован: 2016-08-09
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл hexadecimal формат (python 1.5.2)

Супер!
Все получилось
Спасибо vic57!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version