GRY-Online.pl --> Archiwum Forum

problemy z C++ i kompilatorem

11.05.2004
15:16
[1]

matlas [ Legionista ]

problemy z C++ i kompilatorem

mam problem
oto tesr programu w c++;

#include <iostream>
#include <fstream>

using namespace std;

const char* PLIK="dane.txt";
const int MAX=20;

struct POZYCJA

char nazwa[MAX+1];
double ile;
›;




int main()

fstream dane(PLIK, ios::in | ios::out | ios::binary);
if(!dane)

cerr << "Nie moge otworzyc " << PLIK << endl;
exit(0);


return 0;
›;

ten program powinien stworzyc plik o nazwie plik.txt jednak tego nie robi wyswietla tylko ze niemozna utworzyc pliku
mam system Windows XP prof
kompilator Bodrlan Buldier 6 C++ ver Enterprise Edidtion
lgouje sie jako admin
prosze oszybka pomoc czy cos trza ustawic w tym kompilatorze czy to wina XP ze skompilowny program po wywolaniu nie tworzy pliku(oczywiscie mam wolnego 300mb).Szał mnie dopadl juz prosze o pomoc!!!!

11.05.2004
16:14
smile
[2]

szagrad [ XIII. STOLETÍ ]

hmmm jeśli sie nie myle ten plik.txt musi sie znajdowac w tym samym katalogu co program (przynajmniej tak wynika z twojego programu), a czy dziala to nie weim az tak biegły nie jestem a kompilatora w tej chwili nie mam.
Jesli sie myle to niech mnie ktos poprawi :)
Sya

11.05.2004
16:14
[3]

szagrad [ XIII. STOLETÍ ]

sorki tu było to samo komp cos swiruje

Wypowiedź została zmodyfikowana przez jej autora [2004-05-11 16:14:56]

11.05.2004
16:18
[4]

matlas [ Legionista ]

ale mi o to chodzi ze jesli nie ma pliku iuruchomie ten prgoram to jesli nie ma powinien go chyba stworzyc?????a u mnie tak sie nie dzieje

11.05.2004
16:23
[5]

szagrad [ XIII. STOLETÍ ]

to nie wynika z tego programiku iz ma tworzyc takowy plik jesli go nie znajdzie

Wypowiedź została zmodyfikowana przez jej autora [2004-05-11 16:24:22]

11.05.2004
16:25
[6]

matlas [ Legionista ]

to co mam dopisac zeby tak bylo tzn zeby go tworzyl jesli nie jest utworzony jeszcze????????

11.05.2004
16:32
[7]

szagrad [ XIII. STOLETÍ ]

chyba tak
chociaz nie n a100%

void ZapiszBazeDoPlikuWykonawca()

FILE *wskPlik;
wskPlik = fopen(PlikWykonawca, "w");
if(!wskPlik)‹
cout<<"BLAD: Nie moge otworzyc pliku do zapisu!\n";
return;


fprintf( wskPlik, "%d\n", RozmiarOsoba);
int i;
for(i=0; i<RozmiarOsoba; i++)‹
.
.
.
fclose(wskPlik);



11.05.2004
16:34
[8]

szagrad [ XIII. STOLETÍ ]

w kzdym razie jest to fragment programiku ktory robil za baze danych dla kumpla program działa heh

11.05.2004
18:09
[9]

matlas [ Legionista ]

ale ja nie pisze w C , chodzi mi jak to zrobic obiektowo w C++!!!!!!!! jak ktos wie niech powie czemu mopj nie dizala

11.05.2004
19:38
[10]

matlas [ Legionista ]

czekam na pomoc , wiem juz ze to wina albo kompilatora albo XP tylko proszep owiedziec ja mam ustawic borlanda buldiera albo xp zeby mi dzialal program

12.05.2004
19:43
[11]

matlas [ Legionista ]

czekam na pomoc bo nadal nic nie moge zrobic

12.05.2004
21:29
[12]

Voutrin [ Pretorianin ]

Niewiem czy o to chodzilo:

#include < fstream.h >

void main(void)

char nazwa[]="dane.txt";
char text[] = "jakis tam txt";

ofstream obiekt(nazwa);
if (!obiekt)

cout << "Pliku nie mozna otworzyc" << endl;
return;

obiekt << text;
obiekt.close();


Tworzy plik dane.txt, albo go otwiera i zapisuje do niego nowy tekst.

14.05.2004
00:35
[13]

matlas [ Legionista ]

nie oto mi chodzi chodzi ze moj program jest dobrze napisany bo zywcem z ksiazki tylko problem jest w xp albo w borlandzie ic o mam poczac zebuy mi plik tworzylo bo nie tworzy a pod innym systemem i kompilatorem tak

14.05.2004
07:49
[14]

reik [ Pretorianin ]

Niestety zabawa z fstream ma to do siebie, że nie dowiesz się co jest przyczyną błędu.
Możesz spróbować utworzyć plik podając bezwzględną lokalizację:

fstream dane("C:\mojplik.txt", ios::in | ios::out | ios::binary);

może się okazać, że w domyślnej lokalizacji nie można utworzyć pliku np. z brku praw.

14.05.2004
08:00
[15]

Swidrygajłow [ ]


a musi byc koniecznie fstream?
w builderze jest tyle sposobow na zapis do pliku, także obiektowych, np. TMemoryStream

© 2000-2024 GRY-OnLine S.A.