<fstream> Program otwiera plik którego nie ma ?!
Ostatnio zmodyfikowano 2013-12-30 15:24
Zdziwiony Temat założony przez niniejszego użytkownika |
<fstream> Program otwiera plik którego nie ma ?! » 2013-12-06 17:05:46 Witam mam taki oto kod: if( komenda == "utworz" ) { string nazwa; cout << "Podaj nazwe pliku do utworzenia (oraz opcjonalnie sciezke gdzie ma sie on znajdowac)\n"; cin >> nazwa; ofstream plik( nazwa.c_str() ); plik.close(); plik.open( nazwa.c_str(), std::ios::in | std::ios::out ); if( plik.good() == true ) { cout << "Plik zostal pomyslnie utworzony!" << std::endl; } else cout << "Nie mozna utworzyc pliku! Moze nie masz do tego uprawnien?" << std::endl; } Podany wyżej kod w założeniu ma utworzyć plik, po czym go otworzyć sprawdzając w ten sposób, czy istnieje, jednak program nie działa po mojej myśli, bo po wpisaniu ścieżki gdzie plik ma się utworzyć czyli np. C:\plik (jak wiadomo program nie ma uprawnień, żeby plik tam utworzyć, więc go nie tworzy, jednak w konsoli wywala komunikat "Plik zostal pomyslnie utworzony!" (czyli plik został otwarty..., ale jak to możliwe skoro tego pliku tam nie ma ?!) Czy popełniłem tu jakiś błąd ? Pozdrawiam. PS: Uwaga odkryłem baardzo dziwną rzecz A mianowicie: Jeśli do utworzenia pliku wpisze coś takiego C:\plik (wyskoczy ze plik pomyslnie utworzony chociaz go nie ma -.-) C:\plik.exe (program zadziała poprawnie i wyswietli ze nie mam uprawnien do utworzenia pliku) Więc o co tu chodzi ?! EDIT2: Nikt nic nie pisze... Czyli kod jest OK ? :O |
|
Zdziwiony Temat założony przez niniejszego użytkownika |
» 2013-12-07 20:39:02 @REFRESH!
Na prawdę nikt nie wie gdzie jest problem ?? Co źle zapisałem ?
EDIT:
Dobrze to może inaczej.... Ten kod jest poprawny czy nie ?
Czemu nikt nic nie odpisuje ? Zatkało Was czy co ? :P |
|
leon_w |
» 2013-12-08 12:35:07 u mnie dziala normalnie. Jeśli plik się nie utworzy, wypisuje odpowiedni komunikat. |
|
Zdziwiony Temat założony przez niniejszego użytkownika |
» 2013-12-08 21:18:35 A próbowałeś utworzyć na dysku C ?
Bo jak ja wpisze C:\plik wywali że się utworzył chociaż go tam nie ma...
A jak dam: C:\plik.exe
to wtedy wypisuje że nie może...
Więc wtf ? Wina windowsa ? |
|
czosnek17 |
» 2013-12-08 21:54:39 Może plik się tworzy(i tam program go otwiera), ale nie tam gdzie trzeba? Przeczytaj część Ścieżka do pliku Podstawy obsługi plikówSpróbuj użyć w ścieżce \\ albo /, a nie \ |
|
leon_w |
» 2013-12-08 22:23:54 A próbowałeś utworzyć na dysku C ? |
Tak. i w "c" nie chciało utworzyć pliku i był komunikat ze nie utworzono pliku. Tak samo w innym folderze zabezpieczonym przed zapisem. I nie było różnicy czy z rozszerzeniem czy nie. Było by dobrze,żeby jeszcze ktoś to sprawdził. |
|
Zdziwiony Temat założony przez niniejszego użytkownika |
» 2013-12-22 17:26:28 Bardzo dziwna sprawa... może to kwestia konfiguracji systemu czy coś ? |
|
abdi |
» 2013-12-25 16:36:57 Nie no to w ogóle bez sensu, dwukrotnie próbujesz utworzyć plik. |
|
« 1 » 2 |