Odczytywanie daych z pliku. Błąd w najprostszym kodzie
Ostatnio zmodyfikowano 2013-11-19 20:33
kitsss Temat założony przez niniejszego użytkownika |
Odczytywanie daych z pliku. Błąd w najprostszym kodzie » 2013-11-18 22:07:12 Gdy utworze notatnik na pulpicie, nie potrafie odczytac z niego danych (kompilator oswiadcza mi za pomoca if'a, ze otwarcie pliku nie powiodlo sie). Gdzie py - nazwa notatnika. #include <iostream> #include <cstdlib> #include <fstream> using namespace std; main() { std::ifstream pliczek; pliczek.open( "C:\\Users\uzytkownik\Desktop\py(.txt)" ); if( pliczek.good() ) { cout << "INFO: plik udało się otworzyc\n"; } else { cout << "INFO: otwarcie pliku sie nie powiodlo\n"; } system( "PAUSE" ); }
|
|
Nitr0Skay |
» 2013-11-18 22:48:33 Błąd leży w tejże linijce: pliczek.open( "C:\\Users\uzytkownik\Desktop\py(.txt)" );
Otóż: "Podając znaki, bądź łańcuchy znaków w języku C++ należy pamiętać, że backslash jest znakiem specjalnym, który umożliwia łatwe wstawienie chociażby znaku nowej linii. Tym samym zapisanie pojedynczego backslasha do zmiennej tekstowej (bądź do zmiennej znakowej) wymaga napisania dwóch znaków '\\'. Początkowi programiści prawie zawsze o tym zapominają, a potem godzinami wpatrują się w kod źródłowy szukając błędu wszędzie, tylko nie w podanej ścieżce do pliku. Wniosek? Zapamiętaj ten fakt! :) " Źródło: http://cpp0x.pl/kursy/Kurs-C++/Poziom-4/Podstawy-obslugi-plikow/355 Po za tym, nazwa pliku - pu.txt (nie wiem, po co wstawiłeś te nawiasy po nazwie pliku (w sensie (.txt)) Spróbuj to pozmieniać i daj znać, czy pomogło |
|
leon_w |
» 2013-11-18 22:49:12 Użyj w całej ścieżce (nie tylko po C:) podwójnych backslashy, lub użyj pojedynczych slashy. I usuń te nawiasy w które wzięte jest ".txt"
Ups, spóźniony :P |
|
kitsss Temat założony przez niniejszego użytkownika |
» 2013-11-19 20:33:47 Dzięki wielkie chłopaki za pomoc. pliczek.open( "C:\\Users\uzytkownik\Desktop\py(.txt)" );
na: pliczek.open( "C:/Users/uzytkownik/Desktop/py.txt" );
Dzięki temu pliczek wczytuje się prawidłowo. Mój błąd, że nie przeczytałem dokładnie tej części kursu. |
|
« 1 » |