Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Токи
0 / 0 / 0
Регистрация: 11.01.2012
Сообщений: 5
#1

Бинарние запись и чтение из файла - C++

11.01.2012, 01:07. Просмотров 507. Ответов 2
Метки нет (Все метки)

Есть функция, которая записывает в файл текст в бинарном виде:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void AddMail() 
{ 
_tprintf(_T("\nEnter a message:\n")); 
_tscanf_s(_T("%s"),message,MAX_PATH); 
len=_tcslen(message)*sizeof(TCHAR); 
ReadFile(hFile,&total,4,&real,0); 
total++; 
ReadFile(hFile,&size,4,&real,0); 
size+=len; 
SetFilePointer(hFile,0,&DistHigh,FILE_END); 
WriteFile(hFile,&len,4,&real,0); 
WriteFile(hFile,message,sizeof(message),&real,0); 
SetFilePointer(hFile,0,&DistHigh,FILE_BEGIN); 
WriteFile(hFile,&total,4,&real,0); 
WriteFile(hFile,&size,4,&real,0); 
SetFilePointer(hFile,0,&DistHigh,FILE_BEGIN);
Помогите написать функцию Read_From_File
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2012, 01:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Бинарние запись и чтение из файла (C++):

Чтение из файла и запись - C++
Доброго времени суток. Передо мной стоит следующая задача - имеется файл и строк слов такого типа: АААА ББББ ВВВВВ АААА ПППП АААА...

Запись и чтение с файла - C++
Есть названия машин, их цена и производитель. Нужно сделать программу, которая при вводе производителя выводит название машины и её цены. ...

запись\чтение из файла - C++
У меня несколько вопросов по поводу запись\чтение из файла Как это вообще работает?) Чтобы потом читать из файла надо забивать каждое...

Чтение/запись файла - C++
Помогите написать 2 функции. 1-создает файл 2-Записывает в файл

Запись и чтение с файла - C++
Подскажите пожалуйста как правильно записать массив в файл и считать его оттуда в другой массив? Если можно пример кода не в чистом с,а...

Запись и чтение из файла - C++
Здравствуйте не могли бы мне помочь разобраться, что не так. Есть две программы, одна для записи в файл “Writer.exe” а для чтения...

2
NoMasters
Псевдослучайный
1764 / 1107 / 73
Регистрация: 13.09.2011
Сообщений: 3,143
11.01.2012, 01:18 #2
А привести полный код? Где все объявления?

Не по теме:

Зачем, зачем, зачем использовать корявое винапи там, где отлично работают функции из стандартной библиотеки?!

0
Токи
0 / 0 / 0
Регистрация: 11.01.2012
Сообщений: 5
11.01.2012, 01:21  [ТС] #3
Вот пожалуйста:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include "stdafx.h"
#include "windows.h"
#include "stdio.h"
#include "tchar.h"
 
DWORD  total,size,len,real;
DWORD HighPart;
LONG DistHigh=0;
TCHAR message[MAX_PATH];
TCHAR FileName[]=_T("mailbox.dat");
int menu = -1;
HANDLE hFile;
void AddMail();
bool DeleteMail(void);
bool ReadMail(void);
 
  int _tmain(int argc, _TCHAR* argv[])
   { 
       hFile=CreateFile(FileName,GENERIC_READ|GENERIC_WRITE,0,0,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
   if(!hFile)
      {
       _tprintf(_T("Error"));
       return -1;
      }
   if(GetFileSize(hFile,&HighPart)==0)
      {
       WriteFile(hFile,&total,4,&real,0);
       WriteFile(hFile,&total,4,&real,0);
       SetFilePointer(hFile,0,&DistHigh,FILE_BEGIN);
      }
   _tprintf(_T("Make your choice(0-Exit,1-Add,2-Read,3-Delete)\n"));
       while(menu)
       {
           _tscanf(_T("%d"),&menu);
           switch(menu)
           {
           case 0:CloseHandle(hFile);break;
           case 1:AddMail();break;
           case 2:if(!ReadMail())_tprintf(_T("\nWrong index\n")); break;
           //case 3:if(!DeleteMail())_tprintf(_T("Wrong index")); break;
           default:_tprintf(_T("\nWrong option\n"));
 
               }
      }
    return 0;
       
           
  }
       
void AddMail()
           {
               _tprintf(_T("\nEnter a message:\n"));
               _tscanf_s(_T("%s"),message,MAX_PATH);
               len=_tcslen(message)*sizeof(TCHAR);
               ReadFile(hFile,&total,4,&real,0);
               total++;
               ReadFile(hFile,&size,4,&real,0);
               size+=len;
               SetFilePointer(hFile,0,&DistHigh,FILE_END);
               WriteFile(hFile,&len,4,&real,0);
               WriteFile(hFile,message,sizeof(message),&real,0);
               SetFilePointer(hFile,0,&DistHigh,FILE_BEGIN);
               WriteFile(hFile,&total,4,&real,0);
               WriteFile(hFile,&size,4,&real,0);
               SetFilePointer(hFile,0,&DistHigh,FILE_BEGIN);
           }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2012, 01:21
Привет! Вот еще темы с ответами:

Запись и чтение из файла - C++
Здравствуйте, написал программу которая реализует следующее, пользователь создает исходный текстовый файл, в который заносит текст,...

Запись и чтение из файла - C++
как записать в файл вывод массива OutputArray(), количество нулевых элементов NumNull(), массив с заменой нулевых элементов на единицу...

Запись и чтение с файла - C++
Здравствуйте,помогите пожалуйста ..есть две структуры, но каждая записывается и считывается с разных файлов, не посоветует как можно...

Си, Запись и Чтение из файла. - C++
Глупый вопрос, но весь гугл перерыл. Нужно сделать именно на СИ(не на с++) чтение и запись в файл .txt . С использованием библиотеки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru