Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zapisywanie do pliku... ?

Ostatnio zmodyfikowano 2009-01-05 20:54
Autor Wiadomość
DeBugger
Uwaga JCJa
» 2009-01-05 20:29:45
Przepraszam bardzo, że się wtrącam. Chciałbym tylko powiedzieć, żebyście powrócili do tematu lub go zamknęli.
P-3458
DejaVu
» 2009-01-05 23:20:25
Proszę nie wdawać się w dyskusje nie dotyczące bezpośrednio pomocy w rozwiązaniu zadania. Do autora tematu: proszę o poinformowanie nas czy temat można uznać za rozwiązany lub wskazać czego jeszcze nie wiesz jak zrobić.

Do wszystkich: Pokój na Ziemii :D
P-3470
manfred
» 2009-01-05 13:19:35
No cóż, aby zapisać na pulpit to trzeba sobie adres tegoż odczytać, a to łatwe nie jest. Do folderu z programem to będzie tak:
C/C++
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    fstream plik;
    plik.open( "foo.txt" ); //otwieramy plik
    plik << "bar"; //zapisujemy do pliku, używamy tego podobnie jak cout
    return 0;
}
P-18694
manfred
» 2009-01-05 17:57:28
C/C++
fstream plik;
plik.open( "bleble.txt", ios::out );
plik << "jakiś tekst" << endl;
plik.close();

Hm... napewno czytałeś dokładnie lekcję kursu?

Hm... "napewno" (did you mean na pewno?) wiem co mówi standard:
C/C++
explicit fstream( const char * filename,
ios_base::openmode mode = ios_base::in | ios_base::out );
//oraz
void open( const char * filename,
ios_base::openmode mode = ios_base::in | ios_base::out );
Jak widać ios::out zasadniczo zbędne, domyślnie mamy i in, i out. Jak sam out to ofstream zawsze jest (zresztą ofstream jakby mniejszy - nie jest iostreamem tylko ostreamem). Co do close - tak się "przypadkowo" składa, że destruktor fstreama (a ściślej filebufa) wywołuje close jeśli plik jest otwarty...

@topic:

Hm. Może coś takiego:
C/C++
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ofstream plik( "foo.txt" );
    filestream * cout_rdbuf = cout.rdbuf();
    cout.rdbuf( plik.rdbuf() );
    // tu używamy cout, ale zapisuje do pliku
    cout.rdbuf( cout_rdbuf ); //warto by przywrócić rdbuf coutowi
    return 0;
}

Jak nie o to chodzi to może:

C/C++
#include <iostream>
#include <fstream>

using namespace std;

class CMyStrumien // :D
{
    fstream plik;
public:
    ~CMyStrumien() { }
    CMyStrumien()
        : plik( "bar.txt" )
    { }
    CMyStrumien( const char * nazwa )
        : plik( nazwa )
    { }
    template < typename T >
    CMyStrumien & operator <<( T co )
    {
        cout << co;
        plik << co;
        return * this;
    }
} strumien;

int main()
{
    strumien << "Foo!"; //Foo! idzie i na cout, i do pliku
    return 0;
}
P-18695
manfred
» 2009-01-05 18:09:55
Gratulacje... Trzeci post o tym samym. Autorowi chodzi o zapisywanie tego co generuje program a nie o samo wysłanie do fstreama tekstu (chyba). Kod działający jak twój i o takiej długości rzuciłem jako pierwszy, potem nasz szanowny admin postanowił się przyczepić mimo mizernej wiedzy (no co, standard kontra Piotr, nie ma o czym mówić...), a teraz ty wylatujesz... Ossochozi?

/edit:
no baaa... na 99% po tym poście dostanę pięknego banana, oczywiście "zasłużenie", za to, że znam cppreference...
P-18697
manfred
» 2009-01-05 18:19:24
No to po co był twój post? Już przecież to rozwiązanie podane było, tylko autorowi nie pasowało... A flejm to się zaczął teraz - po twoim poście. Tacy ludzie mnie denerwują... Przeczytają tylko końcówkę ostatniego wpisu zamiast cały temat i piszą rozwiązania, które już zostały podane miliard razy.
P-18700
manfred
» 2009-01-05 20:00:08
O lol. Jedyne co zrobiłem to zacytowałem cppreference i stwierdziłem, że admin się pomylił (oj, jakby to był pierwszy raz to z pewnością bym inaczej zareagował - wiesz, słowo admina jest przecież ważniejsze niż ISO 14882 - przynajmniej wg tutejszego admina). Wywyższam się? Gdzie twierdzę, że skoro ja coś mówię to tak jest i fin? Obrażam - aha, stwierdzenie o mizernej wiedzy (a nieraz błąd jego widziałem, lecz siedziałem cicho) to to obrażanie?
P-18704
manfred
» 2009-01-05 20:54:07
I dobrze że się wtrącasz... Ja tam czekam aż autor się obudzi, bo tak do końca to go nie zrozumiałem i nie wiem o co chodzi...

@Pietrzuch: mógłbyś na gg ze mną porozmawiać? jak tak - mój numer to <ciach> (oczywiście każdy inny też może, najwyżej oleję)
P-18706
1 « 2 »
Poprzednia strona Strona 2 z 2