na koniec wiersza w pliku

0

otwieram sobie plik tekstowy w ktorym juz mam koluwne danych, no i chce dopisać druga kolumne danych. jak to zrobić?
czyli np. otwieram plik, szukam konca linii i dopisuje jakąś wartość, potem przechodzę do drugiej linii, szukam jej końca i dopisuję wartość. Tylko jak znaleźć koniec linii w pliku tekstowym?

0

Eeee ze niby jak to sobie wyobrażasz ? Że odczytasz linijke, dokleisz do niej kawalek tekstu, wrzucisz, do tego samego pliku, a reszta automatycznie sama sie przesunie o n dodanych bajtów i zrobi przestrzeń w pliku ? Przeciez plik to bajt za bajtem, bez nieciągłosci. Sposób jest taki: Z jednego pliku czytasz, dodajesz swoje, do drugiego zapisujesz, potem kasujesz stary a nowemu zmieniasz nazwę.

0

getline(char tmp[], sizeof(tmp), '\n' /znak konca lini/);

potem:

fout<<tmp<<'\t'<<drugakolumna<<endl; //czyli '\n'

0

otworz plik binarnie np:

FILE *f;
char cZnak;
unsigned long ulOffset = 0;

if(( f=fopen( "nazwa.roz" , "rb" )) != NULL )
{
fread( &cZnak , sizeof( cZnak ),1, f );
while( ! feof( f ) )
{
if( cZnak == '\r' )
{
//koniec lini
fclose( f );
return;
}
ulOffset++;
}
}

if(( f=fopen( "nazwa.roz" , "r+b" )) != NULL )
{
fseek( f , ulOffset , SEEK_SET ); // ustawiasz adres w pliku
fwrite( cBuffor , sizeof( cBuffor ),1, f ); // zapisujesz dane
fclose( f );
}

0

dzięki za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1