🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

4 total messages Started by pbogo... pibo Thu, 25 Sep 1997 00:00
Pliki binarne w C++
#1
Author: pbogo... pibo
Date: Thu, 25 Sep 1997 00:00
8 lines
572 bytes
Jako totalny nowicjusz w C++ prosze o pomoc w czytaniu plikow. Czy
ktos moze przeslac mi najprostszy przyklad otwarcia pliku (binarnego)
i odczytania kilku wartosci liczbowych / stringow z bajtow o
okreslonych numerach?

Dzieki z gory
PIBO
Re: Pliki binarne w C++
#2
Author: Krzysztof Murkowski
Date: Fri, 26 Sep 1997 00:00
37 lines
1220 bytes
pibo wrote:
> 
> Jako totalny nowicjusz w C++ prosze o pomoc w czytaniu plikow. Czy
> ktos moze przeslac mi najprostszy przyklad otwarcia pliku (binarnego)
> i odczytania kilku wartosci liczbowych / stringow z bajtow o
> okreslonych numerach?

#include <stdio.h>

void main()
{
   FILE *plik;
   long licznik;
   char bufor[20];

   if( (plik=fopen("plik.bin", "rb"))==NULL )
   {
     printf("Nie moge otworzyc pliku\n");
     return;
   }
   licznik=15;
   fseek( plik, licznik, SEEK_SET );   
   fread( bufor, 10, 1, plik );
   fclose( plik );
}

Mniej wiecej powinno przeczytac 10 bajtow poczawszy od 15.
Mozna to zrobic na 150.000 innych sposobow, ale ten w celach
edukacyjnych jest chyba OK.

Pozdrowienia++

-- 
Krzysztof Murkowski
mailto:mu...@ml.put.poznan.pl
http://www.ml.put.poznan.pl/~murek
Re: Pliki binarne w C++
#4
Author: Marcin Witek
Date: Fri, 26 Sep 1997 00:00
11 lines
807 bytes
Krzysztof Murkowski <mu...@ml.put.poznan.pl> wrote:
:    if( (plik=fopen("plik.bin", "rb"))==NULL )
     ... itd
: Mniej wiecej powinno przeczytac 10 bajtow poczawszy od 15.
: Mozna to zrobic na 150.000 innych sposobow, ale ten w celach
: edukacyjnych jest chyba OK.

  Taa, doskonaly przyklad, szczegolnie C++. A moze by tak iostream ?

                                              Wit
Re: Pliki binarne w C++
#3
Author: Jerzy GOCA
Date: Sat, 27 Sep 1997 00:00
26 lines
1074 bytes

#include <fstream.h>

int main()
{
  const char *name="plik.bin";
  long pos=23;  // numer bajtu do wczytania z pliku 
  char byte;    // wartosc do wczytania

  // otwarcie w trybie binarnym:
  ifstream is(name,ios::binary);
  if (!is)
     cerr<<"Nie moge otworzyc pliku: "<<name;
  else {
     // odszukanie bajtu nr 'pos' w otwartym pliku
     // i jego odczyt
     is.seekg(pos).read(&byte,sizeof(byte));
     if (!is)
        // blad odczytu (np. pos wskazuje poza koniec pliku)
        cerr<<"Blad odczytu pliku "<<name<<endl;
     else
        // Udalo sie:
        cout<<"Odczytano bajt nr "<<pos<<", wartosc="<<byte<<endl;
  }
}
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads