Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 21, 2016 10:39:36

duhaod
Зарегистрирован: 2016-04-12
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

Всем Доброго Времени Суток!
я новичок вот и прошу помощи так что если скажу глупость не судите строго
как сие чудо приобразовать в нужный вид.

вот скрипт открывает JAR фаил и читает в нем фаил 1.txt

#! /usr/bin/python3.4
import zipfile
with zipfile.ZipFile('1.jar') as myzip:
	with myzip.open('res/1.txt') as myfile:
		print(myfile.read())
text1=myfile.read()
print('\n',text1)
f = open('/home/python/test/1.txt', 'w') 
f.write(text1)
f.close()

Первый Print
b'\xc5\xf1\xeb\xe8 \xe1\xfb\xf2\xfc \xf2\xee\xf7\xed\xfb\xec'
Второй Print
 b''

Фаил: /home/python/test/1.txt Пустой

текст там такой должен быть
Если быть точным

Lubuntu 5.10 python 3.4

Отредактировано duhaod (Апрель 21, 2016 10:56:11)

Офлайн

#2 Апрель 21, 2016 11:21:02

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

Поиск по форуму = utf8, кодировка
Google => python + utf-8



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Отредактировано ZerG (Апрель 21, 2016 11:21:40)

Офлайн

#3 Апрель 21, 2016 11:35:48

duhaod
Зарегистрирован: 2016-04-12
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

ZerG
Поиск по форуму = utf8, кодировкаGoogle => python + utf-8
Кодировка кодировкой…. с ней можно и потом разобратся я так понимаю главное что он мне уже
в text1 записывает
 b''
и ничего больше

Офлайн

#4 Апрель 21, 2016 11:43:06

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

duhaod
Фаил: /home/python/test/1.txt Пустой
К концу with myfile закрыт.



Офлайн

#5 Апрель 21, 2016 11:44:36

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

text1=myfile.read() в цикл with должен находиться



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#6 Апрель 21, 2016 12:20:57

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

ZerG
text1=myfile.read()
в цикл with должен находиться
with - это не цикл, это оператор создания контекста для выполнения содержимого. Работает только для тех объектов, у которых есть специальные методы входа в контекст и выхода из контекста.

Даже если он добавит, два раза подряд .read() нельзя вызывать без перемотки.



Отредактировано py.user.next (Апрель 21, 2016 12:21:31)

Офлайн

#7 Апрель 21, 2016 13:58:43

duhaod
Зарегистрирован: 2016-04-12
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

вот сам фаил походу проблема в нем

Прикреплённый файлы:
attachment 1.txt (16 байт)

Офлайн

#8 Апрель 21, 2016 14:07:13

duhaod
Зарегистрирован: 2016-04-12
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

При попытки читать его без архива

  File "/usr/lib/python3.4/codecs.py", line 319, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc6 in position 5: invalid continuation byte

приэтом в Leafpad
текст виден

Офлайн

#9 Апрель 21, 2016 14:14:12

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

конечно не в нем! Вам хоть почитайте что вам пишут



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#10 Апрель 21, 2016 14:26:51

duhaod
Зарегистрирован: 2016-04-12
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировка \xc5\xf1\xeb\xe8

ZerG
конечно не в нем! Вам хоть почитайте что вам пишут
как с этим боротся без понятия я самоучка

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version