Russian Qt Forum
Апрель 28, 2024, 22:47 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не могу записать в файл.  (Прочитано 2368 раз)
crot26rus
Гость
« : Октябрь 08, 2011, 21:40 »

Код открытия файла:
Код:
QFile file("F:\\Development\\svn\\projects\\trunk\\bin\\client.lock");
    if(!file.open(QIODevice::WriteOnly))
    {
        qint64 pid = qApp->applicationPid();
        file.write(QString().setNum(pid).toAscii());
        file.close();
    }
    else
    {
        qDebug() << "Warning: cann't open 'client.lock' for write ["
                << file.errorString() << "]";
    }
Файл на диске создается, но туда ничего не удается записать.
qDebug выводит 'unknown error'
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4727



Просмотр профиля WWW
« Ответ #1 : Октябрь 08, 2011, 21:43 »

поменяй местами тела иф и элс. open() выдаёт 0 когда файл не может быть открыт. и используй всегда обычные слэши / для путей в Qt.

да, и числа конвертируются в строку, как правило, с помощью QString::number()
« Последнее редактирование: Октябрь 08, 2011, 21:45 от kambala » Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
crot26rus
Гость
« Ответ #2 : Октябрь 08, 2011, 21:55 »

kambala
Код подправил всё заработало, благодарю за дельные советы.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 22.