CFileDialog Multiselect
-
Ich habe ein CFileialog mit Multiselect. Nun möchte ich das mit allen markierten Dateien das selbe gemacht wird. Wie ich das allerdings umsetzten kann weis ich nicht. Kann mir jemand helfen???
mfg
Fink Christoph
-
was ist genau deine frage?
was willst du denn mit den dateien machen?
-
Sie auslesen und in eine gemeinsame Datei schreiben.
-
naja, dann nimmst du dir einfach eine datei nach der anderen vor,
schreibst den inhalt in einen string und holst dir dann die andere datei. die liest du dann auch durch und hängst den inhalt an den string an.
wenn du mit allen dateien fertig bist, schreibst du den string einfach in die neue datei.
-
Wie aber bekomme ich die ganzen Dateinamen die markiert waren heraus????
-
hier mal ein paar code-schnipsel. vielleicht kannst du damit was anfangen:
CString strTemp; vector<CString> Vektor; ´ CFileDialog Datei(TRUE,OFN_ALLOWMULTISELECT, NULL, this); if( Datei.DoModal() == IDOK ) { POSITION p = Datei.GetStartPosition(); while (p != NULL) { strTemp = m_ldFile.GetNextPathName(p); Vektor.push_back(strTemp); } } else { return; }
nun hast du alle dateinamen die im CFileDialog markiert waren im Vektor stehen.
hoffe du kannst damit was anfangen.
CU
P.S. wenn du einen vektor verwendest darfst du natürlich nicht vergessen die header einzubinden!!!
[ Dieser Beitrag wurde am 07.08.2002 um 11:32 Uhr von Elmo2k editiert. ]
-
Ich habe noch nie etwas mit Vektoren gemacht . Kannst du mir bitte noch sagen wie ich dann alle Dateinamen aus dem Vektor herauskriege???
-
in diesem fall lass am besten das mit dem vektor erst mal weg und nimm dir gleich den pfadnamen aus der strtemp heraus
-
wenn du vorher schon weißt wie viele dateien es maximal werden, oder falls du die anzahl begrenzen möchtest, kannst
du auch mit einem array arbeiten. der vektor hat halt den vorteil,
dass man vorher nicht wissen muss wieviele elemente man benötigt!!!
-
Ich weis nicht wieviele es sind. Wie bekomme ich allso die Dateinamen aus dem Vektor?????
-
Einfach in der MSDN unter 'vektor' nachschauen
oder z.B. : v.at(5) bzw. v[5] benutzenKannst auch ein CStringArray nehmen, wenn dir das lieber ist
[ Dieser Beitrag wurde am 08.08.2002 um 06:07 Uhr von Nemesyzz editiert. ]
-
Ich brauche das mit dem Vektor gar nicht. Ich kann ja dort wo der Dateiname in den Vektor geschrieben wird gleich die Datei auslesen und in die gemeinsame Datei schreiben. Aber trotzdem Danke für die Hilfe.