Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 23, 2010 09:13:43

kzoi_py
От:
Зарегистрирован: 2009-02-01
Сообщения: 74
Репутация: +  0  -
Профиль   Отправить e-mail  

каталог с пробелами

Доброго времени суток всем. Задача простейшая. Представьте что вы пишете файловый менеджер и вам нужно удалить каталог с русскими символами и пробелами в середине имени. Пробывал ДОС и винапи команды. Вываливают ошибки ( в досе типа каталог не найден а в винапи какое-то исключение). А в модуле оs предусмотрено по моему удаление пустых каталогов. Вот что я набирал

#query =  u'rmdir /s /q '+ unicode( self.f1.lineEdit_path.text() + '\\' + self.f1.listWidget_cur.currentItem().text() ) + u''
query = u'rd /s /q '+ unicode( self.f1.lineEdit_path.text() + '\\' + self.f1.listWidget_cur.currentItem().text() ) + u''
os.system( query.encode('cp1251'))
в lineedit лежит тоже что и при os.getcwd(). Пробывал и без этой прибавочки. За ранее спасибо.



Офлайн

#2 Апрель 23, 2010 16:19:14

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

каталог с пробелами

os.unlink
shutil.rmtree



Офлайн

#3 Апрель 23, 2010 20:14:32

kzoi_py
От:
Зарегистрирован: 2009-02-01
Сообщения: 74
Репутация: +  0  -
Профиль   Отправить e-mail  

каталог с пробелами

благодарю =)



Офлайн

#4 Апрель 24, 2010 09:36:43

kzoi_py
От:
Зарегистрирован: 2009-02-01
Сообщения: 74
Репутация: +  0  -
Профиль   Отправить e-mail  

каталог с пробелами

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

shutil.copytree( unicode(self.dlg), unicode(self.f1.lineEdit_path.text()).encode('cp1251') + u'\\'.encode('cp1251') + rep[ len(rep)-1 ].encode('cp1251') )
в котором self.dlg - путь к каталогу источнику, rep - кортеж от self.dlg с разделённый по критерию слэшей. В итоге мне вываливается ошибка WindowsError 183. Я так понимаю он не может создать директорию ))) подскажите плиз ) я уже не знаю как играть с кодировками ) скажу только что self.dlg и иже с ними есть строка Qt, Ещё раз спасибо.



Отредактировано (Апрель 24, 2010 09:38:24)

Офлайн

#5 Апрель 24, 2010 15:07:24

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

каталог с пробелами

ERROR_ALREADY_EXISTS
183 (0xB7)
Cannot create a file when that file already exists.

Это - в http://msdn.microsoft.com/en-us/library/ms681382(VS.85).aspx



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version