Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
AD |
14.3.2008, 14:30
Сообщение
#1
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Так решил создать тему, потому что возникли другие проблемы, не связанные с Qt. В Qt-то все и решилось
Короче, fstream file(<string>, <flag>). Если путь к файлу содержит русские названия, то файл не открывается! Как бороться с этим? |
|
|
|
|
Tonal |
14.3.2008, 15:15
Сообщение
#2
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Какая система?
Откуда получаешь строку с именем файла? В какой она кодировке? Почему не использовать Qt-шные классы работы с файлами? |
|
|
|
|
AD |
14.3.2008, 18:36
Сообщение
#3
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Tonal @ 14.3.2008, 15:15) Link Какая система? Откуда получаешь строку с именем файла? В какой она кодировке? Почему не использовать Qt-шные классы работы с файлами? Я полагаю, что кодировка - Win1251! Не использовались Qt-function потому что этот класс был разработан до того, как стал использоваться нами Qt! Переделывать нерационально, но, пока что, еще возможно! |
|
|
|
|
Tonal |
14.3.2008, 22:01
Сообщение
#4
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Не надо предполагать - нужно знать.
Разберись с кодировками и всё получится. Сообщение отредактировал Tonal - 14.3.2008, 22:01 |
|
|
|
|
AD |
18.3.2008, 8:34
Сообщение
#5
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Tonal @ 14.3.2008, 22:01) Link Не надо предполагать - нужно знать. Разберись с кодировками и всё получится. Кодировка того текста - Win1251! Но это ничего не дало. Где найти ошибку? |
|
|
|
|
Tonal |
18.3.2008, 8:46
Сообщение
#6
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
А без Qt работает?
|
|
|
|
|
AD |
18.3.2008, 8:54
Сообщение
#7
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Tonal @ 18.3.2008, 8:46) Link А без Qt работает? Причем здесь Qt? Не открывается файл, если в пути русский текст. Я не могу понять из-за чего. file.open(<name>, <flag>); Кто знает, можете что-нибудь дельное подсказать? |
|
|
|
|
Tonal |
18.3.2008, 9:10
Сообщение
#8
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Какой компилятор?
Вот этот код у меня нормально отрабатывает: g++ (GCC) 3.4.5 (mingw special) Сообщение отредактировал Tonal - 18.3.2008, 9:11 |
|
|
|
|
AD |
18.3.2008, 9:18
Сообщение
#9
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Tonal @ 18.3.2008, 9:10) Link Какой компилятор? Visual Studio 2005, в который встроен Qt. |
|
|
|
|
Tonal |
18.3.2008, 9:29
Сообщение
#10
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Создай новый консольный проект, и попробуй мой код.
Укажи абсолютный путь к файлу. Если не сработает - значит кривые настройки студии. Если сработает - ищи, в чём отличия от твоего кода. |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 26.12.2025, 7:37 |