- 
Data: 2010-04-13 16:06:45
 Temat: Re: Operacje na plikach (odczyt i zapis fread i fwrite)
 Od: "Marcin M." <m...@g...com> szukaj wiadomości tego autora
 [ pokaż wszystkie nagłówki ]Dzięki, teraz działa. Niestety kłóci się z resztą programu. (Po 
 uruchomieniu dostaję komunikat "Przepraszamy, wystąpił problem z
 aplikacją Bitmapy.exe i zostanie ona zamknięta..." - dlaczego?).
 Wywołując TYLKO funkcje LoadData i LoadImage wszystko chodzi pięknie.
 Co do błędu ortograficznego - zauważyłem go po wrzuceniu posta a nie
 znalazłem opcji edytuj - przepraszam za urażenie Waszych zmysłów
 estetycznych : )
 Wczytuję cały plik bo są to niewielkie pliki (8x8), poza tym staram
 się tylko przetestować operacje na plikach i zrozumieć dobrze jak
 poprawnie używać fread i fwrite.
 Oto reszta:
 #include<iostream>
 #include<fstream>
 #include <Windows.h>
 
 using namespace std;
 
 
 class BMP
 
 {
 public:
 typedef struct
 {
 WORD bfType;
 DWORD bfSize;
 DWORD bfReserved1;
 DWORD bfReserved2;
 DWORD bfOffBits;
 } bmpFH;
 
 typedef struct
 {
 DWORD biSize;
 LONG biWidth;
 LONG biHeight;
 WORD biPlanes;
 WORD biBitCount;
 DWORD biCompression;
 DWORD biSizeImage;
 LONG biXPelsPerMeter;
 LONG biYPelsPerMeter;
 DWORD biClrUsed;
 DWORD biClrImportant;
 } bmpIH;
 
 typedef struct
 {
 int R;
 int G;
 int B;
 int empty;
 } colors;
 
 bmpFH FileHeader;
 bmpIH InfoHeader;
 colors IMGData;
 unsigned char *Data;
 
 };
 
 
 
 int x,y;
 
 char *buff;
 long DSize;
 int *binary;
 FILE* plik;
 FILE* data;
 
 
 
 int LoadImage(char *sciezka)
 {
 BMP BM;
 plik = fopen(sciezka, "rb");
 fread(&BM.FileHeader, sizeof(BMP::bmpFH), 1, plik);
 fread(&BM.InfoHeader, sizeof(BMP::bmpIH), 1, plik);
 if (BM.FileHeader.bfType != 0x4D42)
 {
 printf("UWAGA: To nie jest bitmapa\n");
 fclose(plik);
 return 1;
 }
 
 fseek(plik, 18, SEEK_SET);
 fread(&x, sizeof(LONG), 1, plik);
 fread(&y, sizeof(LONG), 1, plik);
 cout<<"Rozmiar obrazu (XxY) to: "<<x<<"x"<<y<<endl;
 cout<<"Maksymalny rozmiar przechowywanych informacji: "<<((x-(x
 %4))*y*3)<<" bitow"<<endl;
 }
 
 
 int LoadData(char *sciezka)
 {
 
 data = fopen(sciezka, "rb");
 fseek(data,0,SEEK_END);
 DSize= ftell(data)*8;
 if (DSize>((x-(x%4))*y*3))
 {
 printf("UWAGA: Rozmiar pliku zbyt duzy\n");
 fclose(data);
 return 1;
 }
 cout<<"Aktualny rozmiar pliku z danymi: "<<DSize<<endl;
 fseek(data,0,SEEK_SET);
 
 char*buff;
 buff=(char*)malloc(sizeof(char)*(DSize/8));
 fread(buff,1,(DSize/8),data);
 
 binary = new int[DSize];
 int i,j;
 i=0;
 j=0;
 for (i=0; i<=DSize; i=i+8)
 {
 j=0;
 for(unsigned m = 128; m > 0; m >>= 1)
 {
 if(buff[i/8] & m)
 {binary[i+j]=1; }
 else
 {binary[i+j]=0; }
 j++;
 }
 } fclose(data);
 free(buff);
 }
 
 
 int przepisz (char *path1, char *path2)
 {
 FILE* zrodlo;
 FILE* target;
 
 zrodlo = fopen(path1,"rb");
 target = fopen(path2,"wb");
 rewind(zrodlo);
 fseek(zrodlo,0,SEEK_END);
 size_t p1size=ftell(zrodlo);
 
 rewind(target);
 rewind(zrodlo);
 void*bufer;
 bufer=malloc(p1size);
 fread(bufer,p1size,1,zrodlo);
 fwrite(bufer,p1size,1,target);
 fclose(zrodlo);
 fclose(target);
 free(bufer);
 return 0;
 
 }
 
 void main(void)
 {
 LoadImage("obraz3.bmp");
 LoadData("dane.dnn");
 //przepisz("obraz3.bmp","przepisany.bmp");
 
 
 }
 
Następne wpisy z tego wątku
- 13.04.10 18:55 Mariusz Kruk
- 13.04.10 22:01 gacek
Najnowsze wątki z tej grupy
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-10-30 Był neosędzia w składzie jest cofka w apelacji [dożywocie za potrójne zabójstwo]
- 2025-10-30 Warszawa => Lead SAP PP Consultant <=
- 2025-10-30 Poznań => Konsultant SAP HCM <=
- 2025-10-30 Warszawa => Junior Rekruter <=
- 2025-10-30 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-30 Zakrzewo => SAP HCM Consultant <=
- 2025-10-30 Gang przestępców napadających przestępców już rozbity! [CBŚP,media,prawny humor]
- 2025-10-30 Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu
- 2025-10-30 Kraków => Production Coordinator / Representant Product Dev <=
- 2025-10-30 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-29 szablon do pasty DIY
- 2025-10-29 Głośnik potrzebny
- 2025-10-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-10-29 Rzeszów => International Freight Forwarder <=
- 2025-10-29 Białystok => Gen AI Engineer <=




![Porównanie i ocena wyników mailingu - czy tylko wskaźniki są ważne? [© lichtmeister - fotolia.com] Porównanie i ocena wyników mailingu - czy tylko wskaźniki są ważne?](https://s3.egospodarka.pl/grafika2/mailing/Porownanie-i-ocena-wynikow-mailingu-czy-tylko-wskazniki-sa-wazne-220933-150x100crop.jpg) 
![Jak mierzyć i oceniać skuteczność mailingu. 5 najważniejszych wskaźników [© maicasaa - Fotolia.com] Jak mierzyć i oceniać skuteczność mailingu. 5 najważniejszych wskaźników](https://s3.egospodarka.pl/grafika2/mailing/Jak-mierzyc-i-oceniac-skutecznosc-mailingu-5-najwazniejszych-wskaznikow-219695-150x100crop.jpg) 
![Skuteczny mailing. Jaka lista mailingowa i targetowanie będą najlepsze? [© georgejmclittle - Fotolia.com] Skuteczny mailing. Jaka lista mailingowa i targetowanie będą najlepsze?](https://s3.egospodarka.pl/grafika2/mailing/Skuteczny-mailing-Jaka-lista-mailingowa-i-targetowanie-beda-najlepsze-216468-150x100crop.jpg) 
![Nowe limity podatkowe na 2025 rok [© cookie_studio na Freepik] Nowe limity podatkowe na 2025 rok](https://s3.egospodarka.pl/grafika2/limity-podatkowe/Nowe-limity-podatkowe-na-2025-rok-262813-150x100crop.jpg) 
 Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei
Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei 
 
 
![Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy [© pixabay] Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy](https://s3.egospodarka.pl/grafika2/rynek-najmu/Wynajem-mieszkania-w-Warszawie-pochlania-44-pensji-Zobacz-jak-wypadamy-na-tle-Europy-269391-150x100crop.jpg) 
![Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie? [© wygenerowane przez AI] Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie?](https://s3.egospodarka.pl/grafika2/prawa-pasazera/Lot-z-niespodzianka-jak-overbooking-zmienia-podroz-i-jakie-prawa-maja-pasazerowie-269384-150x100crop.jpg) 
![Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu [© wygenerowane przez AI] Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu](https://s3.egospodarka.pl/grafika2/lider/Lider-z-sercem-empatia-i-zaufanie-jako-klucz-do-sukcesu-zespolu-269133-150x100crop.png) 
![Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam? [© wygenerowane przez AI] Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam?](https://s3.egospodarka.pl/grafika2/AI/Banka-AI-za-5-bilionow-dolarow-Kiedy-inwestorzy-powiedza-sprawdzam-269382-150x100crop.png) 
 
 
 


