Zapis do pliku csv
Ostatnio zmodyfikowano 2010-04-07 21:29
bartek483 Temat założony przez niniejszego użytkownika |
Zapis do pliku csv » 2010-04-01 16:32:48 Witamm
Jest moze funkcja ktora zapisuje do pliku csv kolumnami, albo oddzielone przecinkami? Z gory dzieki. |
|
Elaine |
» 2010-04-01 18:02:47 std::fprintf? std::basic_ostream<>::operator<<? |
|
bartek483 Temat założony przez niniejszego użytkownika |
» 2010-04-07 21:29:27 Nabazgralem to, ale jest problem, zaraz powiem jaki. #include <iostream> #include <conio.h> #include <fstream> #include <list> #include <cstring>
using namespace std;
struct __Book { char tytul[ 32 ]; char autor[ 32 ]; int egzemplarz; };
class SaveLoad { public: SaveLoad() { } void load(); void save(); void dodaj( const char * tytul, const char * autor, int egzemplarz ); void dodaj( struct __Book * p ); private: list < struct __Book *> books; };
void SaveLoad::dodaj( const char * tytul, const char * autor, int egzemplarz ) { struct __Book * const p = new struct __Book; strncpy( p->tytul, tytul, sizeof( p->tytul ) ); strncpy( p->autor, autor, sizeof( p->autor ) ); p->egzemplarz = egzemplarz; dodaj( p ); }
void SaveLoad::dodaj( struct __Book * p ) { int licz = 0; if( books.empty() == false ) { for( list < struct __Book *>::iterator it = books.begin(); it != books.end(); ++it ) { if( strcmp(( ** it ).tytul, p->tytul ) == - 1 ) { books.insert( it, p ); return; } } books.push_back( p ); } else books.push_back( p ); }
void SaveLoad::save() { ofstream plik; plik.open( "books.csv", ios::out | ios::app ); if( plik.good() ) { for( std::list < struct __Book *>::iterator it = books.begin(), e = books.end(); it != e; ++it ) { plik <<( * it )->tytul << ',' <<( * it )->autor << ',' <<( * it )->egzemplarz << '\n'; } } plik.close(); }
int main() { char tab[ 32 ]; char tab2[ 32 ]; int l; cout << "tytul: "; cin >> tab; cout << "Autor: "; cin >> tab2; cout << "Egzemplarz: "; cin >> l; SaveLoad baza; baza.dodaj( tab, tab2, l ); baza.save(); _getch(); return 0; }
Program nie sortuje, a powinien, moglby kto mi pow dlaczego nie sortuje? ;) Bylbym wdzieczny ;) |
|
« 1 » |