Problem z lekcją "Obsługa plików"
Ostatnio zmodyfikowano 2010-09-29 13:55
Elejdor Temat założony przez niniejszego użytkownika |
Problem z lekcją "Obsługa plików" » 2010-09-22 12:15:14 Wkleiłem do kompilatora skrypt z lekcji XVI. #include <fstream> int main() { std::fstream plik; plik.open( "nazwa_pliku.txt", std::ios::in | std::ios::out ); if( plik.good() == true ) { plik.close(); } return( 0 ); } Problem 1: Gdy próbuję odpalić go z program.exe wyświetla się błąd: "Nie znaleziono punktu wejścia procedury _gxx_personality_v0 w bibliotece libstdc++-6.dll." W folderze z plikiem startowym znajdują się biblioteki: libstdc++-6.dll libgcc_s_sjlj-1.dll libgcc_s_dw2-1.dll Program uruchamia się tylko za pośrednictwem środowiska. Problem 2: W folderze z plikiem exe stworzyłem plik.txt, a kod zmieniłem na: #include <iostream> #include <fstream> #include <conio.h> using namespace std; int main() { fstream plik; plik.open( "plik.txt", ios::in | ios::out ); if( plik.good() == true ) { plik.close(); } else cout << "Nie uzyskano dostepu"; getch(); return( 0 ); } Dlaczego wyświetla się "Nie uzyskano dostępu" skoro plik.txt istnieje? |
|
DejaVu |
» 2010-09-22 14:50:56 Twoje oba programy mają różne nazwy plików, które mają zostać odczytane/zapisane.
/edit:
Poza tym być może plik nie istnieje na dysku w katalogu roboczym aplikacji. |
|
szyx_yankez |
» 2010-09-22 14:51:58 Po pierwsze, jaki kompilator i jakie środowisko.
A po drugie to co wklejłeś, to nie skrypt.
|
|
Elejdor Temat założony przez niniejszego użytkownika |
» 2010-09-22 14:53:16 To nieistotne. Plik odczytany ma nazwę plik.txt, a program "końcowy" to ten drugi, zmieniony przeze mnie. W obydwu błędy są te same. |
|
DejaVu |
» 2010-09-22 14:54:09 Jeżeli masz ukryte rozszerzenia, to Twój plik nazywa się prawdopodobnie "blabla.txt.txt". |
|
Elejdor Temat założony przez niniejszego użytkownika |
» 2010-09-22 15:07:23 Bardziej jednak martwił mnie ten błąd, który wyświetla się przy uruchamianiu.
Właśnie zauważyłem, że gdy biblioteka libstdc++-6.dll znajduje się w folderze z exe, to nie mogę uruchomić nawet przez kompilator.
PS: Środowisko Code::Blocks |
|
szyx_yankez |
» 2010-09-22 16:06:51 Pewnie coś pozmieniałeś w ustawieniach kompilatora, bo ten skompilowany kod u mnie chodzi normalnie, tzn. nie są potrzebne jakieś *.dll-ki. |
|
Elejdor Temat założony przez niniejszego użytkownika |
» 2010-09-22 16:40:33 Dlle są potrzebne do odpalenia bezpośrednio z exe. Przez kompilator też mi wszystko ładnie działa. |
|
« 1 » 2 3 4 |