Advertisement
DaniDori

BinaryFileManagment.h

Nov 2nd, 2023
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. #pragma once
  2. #define _CRT_SECURE_NO_WARNINGS
  3. #include <string>
  4. #include <array>
  5. #include <cstring>
  6. using namespace std;
  7. struct DictionaryEntry {
  8. array<char, 50> englishWord; // Английское слово
  9. array<char, 50> russianWord; // Русское слово
  10.  
  11. // Конструктор для удобства создания записей
  12. DictionaryEntry(const string& eng, const string& rus) {
  13. strncpy(englishWord.data(), eng.c_str(), englishWord.size());
  14. strncpy(russianWord.data(), rus.c_str(), russianWord.size());
  15. }
  16.  
  17. // Пустой конструктор
  18. DictionaryEntry() {
  19. englishWord.fill('\0');
  20. russianWord.fill('\0');
  21. }
  22. };
  23.  
  24. // Управление двоичным файлом
  25. class BinaryFile {
  26. public:
  27. // Создание двоичного файла из текстового
  28. static void createFromText(const string& textFileName, const string& binaryFileName);
  29.  
  30. // Добавить запись в двоичный файл
  31. static void addRecord(const string& binaryFileName, DictionaryEntry& entry);
  32.  
  33. // Удалить запись с заданным ключом из файла
  34. static void removeRecord(const string& binaryFileName, const string& key);
  35.  
  36. // Прочитать запись файла по заданному номеру записи
  37. static void readRecord(const string& binaryFileName, int recordNumber);
  38.  
  39. void searchRecord(const string& binaryFileName, const string& key);
  40. };
  41.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement