absolute Pfade in relative umwandeln

Alles rund um die Programmierung mit Qt
Antworten
5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

absolute Pfade in relative umwandeln

Beitrag von 5000 Watt »

Hallo,

das ist bestimmt eine voll noobige frage, aber wie kann ich einem QDir Objekt den Pfad zu meiner *.exe zuweisen, unabhängig wo meine *.exe gerade ist?
-=Freaky=-
Beiträge: 503
Registriert: 29. Dezember 2006 22:54
Wohnort: HL

Beitrag von -=Freaky=- »

5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

Beitrag von 5000 Watt »

Das habe ich auch schon gefunden, aber ich habe erst kürzlich mit Qt angefangen. Kannst du es auf mein Beispiel übertragen?

Code: Alles auswählen

	
        QString path;
	
	path = QFileDialog::getOpenFileName(
		this,
		"Choose the inputfile",
		QString::null,
		QString::null);
	
        //<-- absoluten Pfad zu einem relative zu meiner .exe umwandeln
	lineEdit_inputfile->setText( path );
hab das schon so versucht:

Code: Alles auswählen

	QDir direction(direction.QDir::absoluteFilePath ( "myqtapp.exe" );
	
	QString s = direction.relativeFilePath(path);
	
	lineEdit_inputfile->setText(ss);
aber irgendwo ist da ein Denkfehler
Zuletzt geändert von 5000 Watt am 17. Oktober 2007 18:32, insgesamt 2-mal geändert.
5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

Beitrag von 5000 Watt »

hehe, im Beispielcode vom Hersteller fehl das "File" in dem Beispielanweisungen
5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

Beitrag von 5000 Watt »

trotzdem hab ich keine Ahnung, wie ich das einsetzen muss
iaby
Beiträge: 53
Registriert: 10. Februar 2007 13:12

Beitrag von iaby »

Code: Alles auswählen

QDir path(QFileDialog::getOpenFileName(
      this,
      "Choose the inputfile",
      QString::null,
      QString::null));

QString relativePath = path.relativeFilePath("myqtapp.exe");
Nicht getestet, sollte trotzdem gehen!

//Edit:
Frage ist jetzt nur noch ob das mit myqtapp.exe passt. Sonst such mal hier im Forum wie du den Pfad zu deiner .exe Datei bekommst!
5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

Beitrag von 5000 Watt »

Jetzt erstellt er mir aber keinen relativen Pfad zu meiner ausgewählten Datei sonder einen zu meiner .exe
5000 Watt
Beiträge: 19
Registriert: 17. Oktober 2007 09:28

Beitrag von 5000 Watt »

Habs, richtig ist es so:

Code: Alles auswählen

QString path(QFileDialog::getOpenFileName(
      this,
      "Choose the outputfile",
      QString::null,
      QString::null));

	QDir dir("..\\myqtapp.exe");
	  
	lineEdit_inputfile->setText( dir.relativeFilePath(path));
Antworten