Seite 1 von 1
Textdatei einlesen
Verfasst: 28. Januar 2009 18:42
von Mr.Undercover
Hallo alle zusammen,
Ich habe gerade einen Browser Button implementiert, wie ich vorhin damit bemerkt habe kann ich damit nur pfade wählen sprich ich kann keine einzelnenDateien selektieren wie kriege ich das hin ?
Die Dateien sind aber ganz Programmspezifische endungen, aber ich möchte das das Programm mir das als TXTdatei einliest ?
Ich habe mal etwas probiert, leider kann ich damit nur pfade einlesen...
Würde mich über jede hilfe freuen...
Source Code:
void LittleTool::on_toolButton_clicked()
{
QString directory1 = QFileDialog::getExistingDirectory(this,
tr("Find Files"), QDir::currentPath());
}
MfG
Verfasst: 28. Januar 2009 18:48
von Christian81
Du wunderst Dich das QFileDialog::getExistingDirectory() nur Verzeichnisauswahl zulässt? Mhhh... ich würde mich wundern wenn ich mit dieser Methode Dateien auswählen könnte...
Verfasst: 28. Januar 2009 18:49
von solarix
wie ich vorhin damit bemerkt habe kann ich damit nur pfade wählen sprich ich kann keine einzelnenDateien selektieren wie kriege ich das hin ?
Was meinst du denn, was bedeutet "getExistingDirectory"... ich übersetz mal: "gibExistierendeVerzeichnisse"... wie wäre es denn mit "getOpenFileName"?
Die Dateien sind aber ganz Programmspezifische endungen, aber ich möchte das das Programm mir das als TXTdatei einliest ?
Das ist dem Dialog egal.... der liefert ja nur den Dateinamen.. wie du den dann einliest, bleibt dir überlassen.
Verfasst: 28. Januar 2009 19:25
von Mr.Undercover
achsooo es gibt also auch getOpenFileName

Sorry wusste ich nicht....
Aber vielen Dank!
Bsp.
Verfasst: 29. Januar 2009 07:37
von s-valve
Hier mal ein Bsp. für mehrere Dateien über getOpenFileNames:
Code: Alles auswählen
QString lastDir; //holds last used directory
QString extensions = "Supported files (*.txt *.doc *.dat)";
QStringList files = QFileDialog::getOpenFileNames(this, "Open my Files", lastDir, extensions);
QFile file;
QString tmpStr;
for (i=0; i< files.count(); i++)
{ //get single files from file list
file.setFileName(files[i].simplified());
tmpStr.clear; //clear tmpStr
if ((!file.exists()) && (!file.open(QIODevice::ReadOnly | QIODevice::Text)))
{
QTextStream in(&file); //get file into stream
while (!file.atEnd()) //get file content into string
{
tmpStr->append(file.readLine());
}
showFile(tmpStr); //show file content anywhere
}
}
Verfasst: 29. Januar 2009 08:09
von pfid
solarix hat geschrieben:
wie ich vorhin damit bemerkt habe kann ich damit nur pfade wählen sprich ich kann keine einzelnenDateien selektieren wie kriege ich das hin ?
Was meinst du denn, was bedeutet "getExistingDirectory"... ich übersetz mal: "gibExistierende
sVerzeichni
s"... wie wäre es denn mit "getOpenFileName"?
Fixed.

Verfasst: 29. Januar 2009 09:01
von solarix