C++ VS 08, OpenFile Dialog. Pfad von geöffneter Datei?

fox40phil

Vice Admiral
Registriert
Okt. 2008
Beiträge
6.425
Moin moin!

Ich habe an der Arbeit ein neues Projekt bekommen, bei dem ich eine HEX-Datei einlesen muss und in dieser anschließend in einer bestimmten Zeile die HEX-Infos zu Ascii konvertieren.

Jetzt hab ich erst mal eine Frage zu dem OpenDialog, da ich noch ganz am Anfang bin von dem Projekt.

Ich habe bisher einen Button der auch einen Dialog zum öffnen von Dateien ausführt (+ Schreibgeschütz offnen ja/nein). Links davon hab ich eine TextBox hin gemacht, wo dann der Pfad angezeigt werden soll, wie wenn man Software installiert und den Installationspfad auswählt steht ja danach auch noch mal der Pfad.

Jetzt ist meine Frage, wenn ich die Datei auswähle und dann auf ok drücke, muss doch auch irg.wo gespeichert werden wo die Datei liegt oder? Weil die Information kann ich ja dann in der TextBox ausgeben lassen.


Freue mich auf eure Unterstützung

Gruß Phil (Azubi im 2.LJ für Anwendungsentwicklung)

Bisheriger Code:

HTML:
private:
   FileStream^ OpenFile()
   {
      // Displays an OpenFileDialog and shows the read/only files.
      OpenFileDialog^ dlgOpenFile = gcnew OpenFileDialog;
      dlgOpenFile->ShowReadOnly = true;

        dlgOpenFile->InitialDirectory = "c:\\";
        dlgOpenFile->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
        dlgOpenFile->FilterIndex = 2;
        dlgOpenFile->RestoreDirectory = true;

      if ( dlgOpenFile->ShowDialog() == DialogResult::get() )
      {
         // If ReadOnlyChecked is true, uses the OpenFile method to
         // open the file with read/only access.
         if ( dlgOpenFile->ReadOnlyChecked == true )
         {
            return dynamic_cast<FileStream^>(dlgOpenFile->OpenFile());
            
         }
         // Otherwise, opens the file with read/write access.
         else
         {
            String^ path = dlgOpenFile->FileName;
            textBox_OpenFile->Text = path;
            return gcnew FileStream( path,System::IO::FileMode::Open,System::IO::FileAccess::ReadWrite );
         }
      }

    

      return nullptr;
   }

//-----------------------------------------

private: System::Void button_lade_Hex_Click(System::Object^  /*sender*/, System::EventArgs^  /*e*/) 
        {
            
            OpenFile(); // Öffne die Funktion "OpenFile()"

        } // button_lade_Hex_Click() -- ENDE --
 
Auf der MSDN gibt ausführliche Beschreibungen und Tabellen zu den ganzen Klassen.
Google hilft da gerne weiter, abgesehen davon, dass du schon auf der MSDN warst und die Antwort übersehen hast.
 
es geht darum, den Pfad der Datei gleich in eine Variable zu speichern, wenn man eine Datei ausgewählt hat!

@Dr. Greg ich gucks mir morgen früh an der Arbeit an.
Ergänzung ()

also irg.wie werde ich nicht fündig!

Ich frage mich auch wo das File dann ist, wenn man es über den Dialog geöffnet hat. Also ich lasse es nicht direkt mit dem Txt-Editor öffnen, sondern es soll dann letztendlich nur eingelesen werden. Cool wäre auch noch wenn man das File in einem Frame der Form-Anwendung anzeigen lassen kann?
 
Zuletzt bearbeitet:
Kage hat doch Recht. oO
Filename gibt dir den Pfad der ausgewählten Datei + Dateiname + Endung
Also
C:\Beispielordner\Beispieldatei.Beispielendung



BTW
Erster Post über den frisch eingerichteten Repeater. *freu*
 
Zurück
Oben