Website Summary Files Commits Branches @commit @diff @stats
path: root / Binary_files / GetStructsFromBinaryFile.cpp
diff options
context:
space:
mode:
Commit0218c678e13e1cb94a352c91733cea68467dc566 (patch)
Author
 Angeld55 <angel_dimitriev@abv.bg>
2021-02-14 23:06:35 +0200
Committer
 Angeld55 <angel_dimitriev@abv.bg>
2021-02-14 23:06:35 +0200
Files16fb3114cb560242458d10411765e50f5d6183db /Binary_files/GetStructsFromBinaryFile.cpp
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.tar
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.tar.gz
Object-oriented_programming_FMI-0218c678e13e1cb94a352c91733cea68467dc566.zip
Parentd4ae0ef9ec1b54420176c4a88e09f2fd44ae31b0 (diff)
start from scratch
1 files changed, 0 insertions, 47 deletions
-rw-r--r--Binary_files/GetStructsFromBinaryFile.cpp47
diff --git a/Binary_files/GetStructsFromBinaryFile.cpp b/Binary_files/GetStructsFromBinaryFile.cpp
deleted file mode 100644
index 011629a..0000000
--- a/Binary_files/GetStructsFromBinaryFile.cpp
+++ /dev/null
@@ -1,47 +0,0 @@
-#include <iostream>
-#include <fstream>
-using namespace std;
-
-struct test
-{
- char ch;
- int num;
-};
-
-int GetFileSize(ifstream& ifs)
-{
- ifs.seekg(0, std::ios::end); //отиваме в края на файла
- int size = ifs.tellg(); //запазваме коя е текущата позиция(тя всъщност е и размерът на файла)
- ifs.seekg(0, std::ios::beg); //връщаме се в началото на файла
- return size;
-//тази функция е хубаво да я извикваме преди да сме чели каквото и да е от файла, понеже ще се върнем в началото и ще загубим информация до къде сме стигнали с четенето
-}
-
-
-int main()
-{
- std::ifstream inF("Structs.bat", std::ios::binary);
-
- if (!inF.is_open())
- return false;
-
- int fileSize = GetFileSize(inF); // взимаме големината на файла
- int objectCount = fileSize / sizeof(test); // намираме броя на обектите записани във файла
-
- test* arr = new test[objectCount];
-
- inF.read((char*)arr, fileSize); //директно ги четем в масива
-
- if (!inF)
- {
- cout << "Error occurred while reading from the file";
- return 1;
- }
- inF.close();
-
- for (int i = 0; i < objectCount; i++)
- cout << arr[i].ch << " " << arr[i].num << endl;
- delete[] arr;
-
- return 0;
-} \ No newline at end of file