Fexclub.su Технологии Программирование и исходники

работа с текстовыми файлами в Qt

F@LLoutBOY 04.12.2010, 20:40
Начал знакомиться с Qt и при выполнении простенького задания у меня возникли вопросы :
1.(Конкретный)Как передать имя файла из обработчика on_inputFileOpenButton_clicked()

void MainWindow::on_inputFileOpenButton_clicked()
{
QString input_filename = QFileDialog::getOpenFileName(this, tr("Open input file"), "", tr("Text files(*.txt *.text *.dat)"));

if(input_filename.isEmpty())
{
return;
}
else
{
QFile input_file(input_filename);
if (!input_file.open(QIODevice::ReadOnly))
{
QMessageBox::information(this, tr("Cannot open input file!"), input_file.errorString());
return;
}
}
}
в некий другой обработчик скажем :


void MainWindow::on_resultFileCreateButton_clicked()
{
}

2.(Более общий)Как средствами Qt можно выделить слова из текстового файла и записать их в какой-нибудь скажем QList ?(используя регулярки к примеру)
VDm 04.12.2010, 21:24
Начал знакомиться с Qt и при выполнении простенького задания у меня возникли вопросы :
1.(Конкретный)Как передать имя файла из обработчика on_inputFileOpenButton_clicked() в некий другой обработчик.
2.(Более общий)Как средствами Qt можно выделить слова из текстового файла и записать их в какой-нибудь скажем QList ?(используя регулярки к примеру)

1. Объявить private переменную "QString inputFileName;" класса MainWindow, присвоить ей значение в первом обработчике и использовать там, где оно понадобится.
2. Прочитать средствами QFile текстовый файл в QByteArray с конвертацией в QString, или, например, читать с помощью QTextStream, или иным способом получить QString и обрабатывать так, как нужно. Недостаток: потребуется загрузить все содержимое файла в память.
Похожие темы
поработать над видео файлами
Обмен файлами, Shaman King VS LISa-31
Работа с web
Работа на СТО
Работа на СТО