Speichern im vorgegebenen Format?
-
Grüsse nochmals
Da so langsam alles funktioniert was tun soll, versuche ich grade noch ein paar Bedienfehler zu unterbinden, falls der DAU mal versucht mit meinem Programm zu schaffen.
Beim Laden und Speichern ist es ja möglich, zu sagen, welche Dateien er anzeigen soll. Nun möchte ich dem Benutzer gerne ein Format aufzwingen, also z.B. *.txt
Wenn ich meinen Dialog zum Speichern öffne, zeigt er mir auch nur Textfiles and, aber wenn ich nun einfach als Namen nur z.B. "Test" eintippe, speichert er auch nur eine Datei "Test" ohne Endung *.txt. Ich möchte aber "Test.txt" haben. Wer ne Idee?
So sieht mein Code dazu aus.
void PropertyPageSeiteA::OnButtonSaveDescription() { CFileDialog cFileDlg(FALSE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Textdateien (*.txt)|*.txt||", NULL); cFileDlg.m_ofn.lpstrInitialDir = _T("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"); cFileDlg.DoModal(); if (cFileDlg.DoModal() == IDOK) { CStdioFile file; if(file.Open(cFileDlg.GetPathName(), CFile::modeCreate | CFile::modeWrite)) { for (int i=0; i<256; i++) { CListCtrl* pList = (CListCtrl*) GetDlgItem(IDC_LIST1); CString m_wert; m_wert = pList->GetItemText(i, 2); file.WriteString(m_wert + "\n"); } file.Close(); } } }
-
Nachtrag
Ich weis welches NULL ich ändern muss, aber ned wie
-
Knicken, lochen und abheften
Nur falls noch wer die Frage hat, hier die Lösung
CFileDialog cFileDlg(FALSE, "Textdateien (*.txt)|*.txt||", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Textdateien (*.txt)|*.txt||", NULL);
-
ich hätte jetzt gesagt so:
CFileDialog cFileDlg(FALSE, ".txt", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Textdateien (*.txt)|*.txt||", NULL);
-
Jepp, tut auch, also kürzer