zbysheck Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 Załżmy że plik dane.txt wygląda tak: 1234 6544 8298 2936 5 1293 9384 8277 1111 6 chcę wczytać pierwsze 4 liczby do tablicy a piątą do zmiennej A, wykonać pare rzeczy, przepisac tablicę do pliku wynik.txt i powtórzyć to wszystko z drugim wierszem. Jakieś pomysły? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 Ogólnie to nie wiem, bo nigdy w GMie na plikach tekstowych nie operowałem, ale to ci powinno pomóc: http://www.gmclan.org/index.php?wiki=article&zm=56 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zbysheck Opublikowano 20 Maja 2009 Autor Udostępnij Opublikowano 20 Maja 2009 nie uściśliłem chyba :D chodziło mi o c++ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 Ach sorka, nie luknąłem w jakim dziale to jest, bo kliknąłem w link z poziomu strony głównej GMC :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 fopen,fread,fwrite,fclose http://www.cplusplus.com/reference/clibrary/cstdio/fwrite/ lub fstream http://www.cplusplus.com/reference/iostream/fstream/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kryniak Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 Ewentualnie możesz spróbować fscanf() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zbysheck Opublikowano 20 Maja 2009 Autor Udostępnij Opublikowano 20 Maja 2009 A mógłby mi ktoś kod szybko napisać? Żebym miał mniej więcej przykład jak to zrobić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 20 Maja 2009 Udostępnij Opublikowano 20 Maja 2009 eee ale nie rozumiem w czym problem? fopen()->otwierasz dany plik fread() ->czytasz 3 liczby do tablicy fread() -> czytasz to a fclose() bawisz się z nimi.. i zapisujesz do nowego pliku jedyna różnica fwrite zamiast fread. Poza tym all funkcje dokładnie opisane na stronie którą podałem wraz z krótkimi przykładami. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zbysheck Opublikowano 20 Maja 2009 Autor Udostępnij Opublikowano 20 Maja 2009 no ok dzięki, jakoś sobie spróbuję poradzić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DRIVER3x2 Opublikowano 21 Maja 2009 Udostępnij Opublikowano 21 Maja 2009 Nie wiem czy pomoc ci jeszcze potrzebna, ale napisze jakby co. A więc przykładowy zapis do pliku moim zdaniem powinien wyglądać tak: #include<fstream> int main() { int tab[3], A; //deklaracja zmiennych tab[0] = 1234; //przypisanie zmiennym wartości tab[1] = 6544; tab[2] = 8298; tab[3] = 2936; std::ofstream PLIK ("dane.txt"); //Otworzenie pliku do zapisania PLIK<<tab[0]<<"\n"; PLIK<<tab[1]<<"\n"; PLIK<<tab[2]<<"\n"; PLIK<<tab[3]<<"\n"; PLIK<<A<<"\n"; } A przykładowy odczyt tak: #include<iostream> #include<fstream> #include<sstream> int ZA(std::string FOO) { int i; std::istringstream iss(FOO); iss >> i; return i; } int main() { int tab[3], A; //deklaracja zmiennych std::string foo, B; std::ifstream PLIK ("dane.txt"); //Otworzenie pliku do odczytu for(short p1=0; p1<4; ++p1) { PLIK>>foo; tab[p1] = ZA(foo); //zamiana stringu na int'a } PLIK>>B; A = ZA(B); for(short p2=0; p2<4; ++p2) { std::cout<<tab[p2]><<"\n"; //wypisanie zmiennych na ekran } std::cout<<a; getchar(); } Kod pisałem na szybko z głowy, ale nie powinno być żadnych błędów. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 21 Maja 2009 Udostępnij Opublikowano 21 Maja 2009 Podstawowa zasada nie wiesz, nie znasz się.. to po prostu nie pisz. Nauczy się jak sam rozwiąże problem a Ty popraw błędy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DRIVER3x2 Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 Ale o co ci chodzi? Gdzie ty masz tam błędy? U mnie się kompiluje elegancko i działa. Podstawowa zasada nie wiesz, nie znasz się.. to po prostu nie pisz. No właśnie tylko szkoda że sam się do tej zasady nie stosujesz :twisted: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 Omg.. nie dość, że robisz błędy to jeszcze nie potrafisz się do nich przyznać. Do tego jeszcze masz błąd w kodzie w sygnaturze gratuluje inteligencji. Jeżeli wyznacznikiem tego czy program działa czy nie jest to, że się kompiluje to moje mniemanie o tobie jeszcze się obniżyło. int tab[3], A; //deklaracja zmiennych tab[0] = 1234; //przypisanie zmiennym wartości tab[1] = 6544; tab[2] = 8298; tab[3] = 2936; if (a=>18) A to jest już szczyt tylko nie jestem pewien czego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DRIVER3x2 Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 Moja sygnaturka nie jest tematem tej rozmowy. Napisałem że się kompiluje i działa, a nie że się tylko kompiluje, czytanie za zrozumieniem... Nadal nie wiem gdzie widzisz w moim kodzie błędy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 No kur.. poczytaj o tablicach i plikach bo ja już tu nic nie zdziałam. Działać a działać poprawnie to zasadnicza różnica. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 Nadal nie wiem gdzie widzisz w moim kodzie błędy. Tak samo jak Will, polecam Ci przeczytać o tablicach... A gdzie jest błąd, domyśl się :) E: Bezmózgowie czyni cuda ^^ Raczej w tym przypadku nie czyni żadnych cudów ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Crackkk-GM Opublikowano 22 Maja 2009 Udostępnij Opublikowano 22 Maja 2009 int tab[3], A; //deklaracja zmiennych tab[0] = 1234; //przypisanie zmiennym wartości tab[1] = 6544; tab[2] = 8298; tab[3] = 2936; int tab[3] == tab[0] tab[1] tab[2] :| ( 3 elementy...) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się