Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 6, 2012 16:25:25

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

MadMax
переносы строк есть, кодировка хромает
Я проверял в обычном блокноте - с кодировкой все в порядке было.

Офлайн

#2 Янв. 6, 2012 16:52:54

MadMax
От:
Зарегистрирован: 2012-01-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

У меня и в блокноте та же история)
Скрипт запускается не под виндой, а под Symbian + Python 1.4.5 - мб поэтому)



Офлайн

#3 Янв. 6, 2012 17:21:35

MadMax
От:
Зарегистрирован: 2012-01-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

Стыдно признаться, но не умом, а методом тыка я вывел формулу успеха (тьфу-тьфу-тьфу):

#coding: utf-8
ru=lambda x: x.decode('utf-8')

test = unicode('PPad - примитивная программа для создания текстовых файлов.\nДля начала работы выберите пункт меню Новый/Очистить.', 'UTF-8')

f = open('C:\\test.txt', 'w')
f.write(test.encode('UTF-8').replace('\n','\r\n'))
f.close()
Спасибо всем большое!
Без ваших советов и подсказок я бы вряд ли смог дойти до такого :)
Теперь буду пытаться перенести этот способ в программу :)



Отредактировано (Янв. 6, 2012 17:30:40)

Офлайн

#4 Янв. 6, 2012 17:32:55

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

Так я ж его тоже не под виндой запускал )
Linux / Python 2.7.1

Офлайн

#5 Янв. 6, 2012 18:51:00

MadMax
От:
Зарегистрирован: 2012-01-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

Нет, упорно Питон не желает видеть компромис кодировки и переноса строк)
На следущий код

content = unicode(Text.get(), "UTF-8")
вот такая ругань в консольке:
Traceback (most recent call last): file “c:\python\EasyPad.py”, line 25, in SaveDoc
content = unicode(Text.get(), “UTF-8”)
TypeError: decoding Unicode is not supported



Офлайн

#6 Янв. 6, 2012 21:11:40

MadMax
От:
Зарегистрирован: 2012-01-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Запись в файл и переносы строк

content = Text.get().replace(u'\u2029', u'\r\n')
Спасибо человеку, который ниспослал мне этот код =D



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version