Главная » 2011 » Апрель » 8 » Перекодировка текста из CP866 в Qt, чтение вывода консольных программ
15:07 Перекодировка текста из CP866 в Qt, чтение вывода консольных программ |
Процесс запускается так: p = new QProcess(); p->start("ping 10.0.1.1"); Чтение из процесса: void MainWindow::readFromProc() { QString s; QTextStream *in = new QTextStream(p->readAll()); in->setCodec("CP866"); while (!in->atEnd()) { s.append(in->readLine()); if(!s.endsWith("\n")) s.append("\n"); } log (s); } p - QProcess, в котором выполняются консольные програмки. Функция запускается через connect(p,SIGNAL(readyRead()),this,SLOT(readFromProc())); Возможно должно быть по другому, т.к. при запуске некоторых программ (например dir) ничего не считывается.
|
Просмотров: 1676 |
Добавил: intell
| Рейтинг: 0.0/0 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
|