Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Не работает кусок кода Помогите пожалуйста. #include "pch.h" #include <conio.h> #include <stdio.h> #include <math.h> #include <iostream> using namespace std; double a; https://www.cyberforum.ru/ cpp-beginners/ thread2331592.html C++ Отсортировать двухмерный массив, методом быстрой сортировки
Всем привет. Помогите в решении задачи, у меня есть двухмерный массив, нужно отсортировать каждую строку методом быстрой сортировки. Спасибо.
C++ Подскажите пожалуйста что не так с программой https://www.cyberforum.ru/ cpp-beginners/ thread2331585.html
#include<iostream> #include<time.h> #include<cstdlib> using namespace std; int main() { int data; int i, j; srand(time(NULL)); for (i = 0; i < 10; i++)
C++ Таблица значений функции Y(x) Вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) для x, изменяющегося от a до b с шагом h = (b – a)/10 Похоже я где-то лохонулся, можете помочь? #include "stdafx.h" #include <iostream> #include <cmath> #include <iomanip> https://www.cyberforum.ru/ cpp-beginners/ thread2331582.html
Как изменить код, чтобы на вывод подавались не все числа, а самое маленькое? C++
Учу С++, задали задачу найти наименьшее число которое делится на M и при этом больше, чем N. Входные данные целые числа N, M (1 <= N, M <= 1000). Всю голову уже сломал. Написал вот такой код, в результате на вывод подаются все числа, которые делятся на M и при этом больше, чем N. Что нужно дописать/изменить, чтобы выводило только одно, самое маленькое, удовлетворяющее условию число? Вот код:...
C++ ошибка при тесте https://www.cyberforum.ru/ cpp-beginners/ thread2331579.html
Формулировка Для проведения олимпиады организаторы планируют объединить компьютеры участников в сеть. Из сетевого оборудования в наличии есть N коммутаторов и неограниченное количество сетевых кабелей. Коммутатор с номером i (1 ≤ i ≤ n) характеризуется числом ai — количеством портов в этом коммутаторе. Организаторы могут соединить кабелем либо два коммутатора, либо два...
C++ Kак реализуются "сложные проценты"? (Стивен Прата - задача про Дафну и Клео) https://www.cyberforum.ru/ cpp-beginners/ thread2331569.html
Изначально дано, что переменная K=100, тогда наша переменная temp становится =5 при объявлении и инициализации. Почему тогда в переменной K реализуются "сложные проценты"(задача про Дафну и Клео), то есть не прибавляется просто 5ка к текущему значению??? double temp = K * 0.05; K += temp;
C++ Как сделать аналог stringstream?
Оригинальный stringstream понравился тем, что удобен в запихивании разношерстных данных,хотелось бы написать подобный для запихивания некоторых своих классов, однако не знаю, как продолжить. Создал класс, переопределил оператор на пару типов данных: void operator <<(char*dat); void operator <<(int dat); оно будет работать в таком случае, this->Speak << "Результат->"; this->Speak...
C++ Поиск одинаковых строковых записей в структуре https://www.cyberforum.ru/ cpp-beginners/ thread2331549.html
Здравствуйте. Помогите пожалуйста. Есть задание: Опишите запись(структуру) АНКЕТА и поместите в нее следующую информацию: Ф.И.О.(фамилия, имя, отчество), адрес (улица, номер дома, номер квартиры), пол, возраст. Определите, сколько лиц женского и сколько мужского пола проживают в одном доме. Написал следующий код: #include "stdafx.h" #include "iostream" #include <Windows.h> using...
C++ Fstream: при запуске программы в IDE, файл не создаётся; почему так происходит? https://www.cyberforum.ru/ cpp-beginners/ thread2331545.html
Доброго времени суток!) Может немного глупый вопрос, но самому решить не получается. Когда собираю и запускаю проект в VS2015 файл не создается. А если файл создан, то в него ничего не записывается. Но, когда я запускаю скомпилированную прогу из папки, то все работает корректно (создание, запись). Фрагмент кода. #include <fstream> //... void met() {
C++ Добавить в программу указатель
Доброго времени суток. Помогите добавить в программу указатель. Программа работает правильно, но по условию должен быть указатель. Помогите кто может. #include <iostream> #include <iomanip> using namespace std; //функция выводит массив на экран void printArray(int array, const int row, const int column) { cout << "\n\nПолученная матрица\n"; for (int i = 0; i < row; i++)
C++ Найти количество пятниц 13 за 3 года , начиная с 1583г https://www.cyberforum.ru/ cpp-beginners/ thread2331523.html
Найти количество пятниц 13 за 3 года , начиная с 1583. ( использовать формулу вечного календаря и решать через циклы).
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
09.10.2018, 22:39 0

Открыть файл в бинарном виде - C++ - Ответ 12958988

09.10.2018, 22:39. Показов 4000. Ответов 3
Метки (Все метки)

Ответ

WinAPI без разницы, что там в файле, эти функции будут читать/записывать данные блоками. Т.е. как в бинарном режиме. Бинарный/текстовый режим работы с файлом влияет только на способ обработки управляющих символов.

Набросал небольшой пример. Надеюсь, поможет. А вообще, с этим вопросом лучше было в ветку C++: WinAPI обратиться, там больше специалистов по этой теме обитает.

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
#include <Windows.h>
#include <iostream>
using namespace std;
 
int main()
{
    const char fname[] = "input.txt";
 
    // Открыть существующий файл для чтения.
    HANDLE hFile = CreateFile(
        fname,                      // Имя файла или путь к нему.
        GENERIC_READ,               // Описание доступа, чтение и/или запись.
        FILE_SHARE_READ,            // Общий доступ к файлу: несколько процессов могут выполнять чтение.
        NULL,                       // Аттрибуты безопасности: по умолчанию.
        OPEN_EXISTING,              // Действия для несуществующих файлов: открыть, только если файл существует.
        FILE_ATTRIBUTE_NORMAL,      // Аттрибуты файла: обычный файл.
        NULL);                      // Аттрибуты template не указаны.
    
    // Проверка открытия файла.
    if (hFile == INVALID_HANDLE_VALUE) {
        cout << "The file has not been opened." << endl;
        return 1;
    }
 
    // Получить размер файла.
    size_t file_size = GetFileSize(
        hFile,                      // Дескриптор открытого файла.
        NULL);                      // Старшая часть размера файла. Для файлов до 4Гб не требуется.
 
    cout << "File size: " << file_size << endl;
 
    DWORD read_length = 0;
    char *buf = new char[file_size];
 
    ReadFile(
        hFile,                      // Дескриптор открытого файла.
        buf,                        // Буфер для чтения.
        file_size,                  // Количество байт для чтения из файла.
        &read_length,               // Фактически прочитано байт.
        NULL);                      // Указатель на структуру OVERLAPPED, если файл открыт с флагом FILE_FLAG_OVERLAPPED.
 
    cout << "Read bytes: " << read_length << endl;
    cout << endl;
 
    for (int i = 0; i < read_length; i++) {
        cout << buf[i];
    }
 
    // Закрыть файл.
    CloseHandle(hFile);
 
    delete[] buf;
 
    return 0;
}
Подробнее о работе с функциями лучше читать в документации от MS: CreateFileA, GetFileSize, ReadFile, CloseHandle.

Вернуться к обсуждению:
Открыть файл в бинарном виде C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.10.2018, 22:39
Готовые ответы и решения:

Не удаётся открыть файл в бинарном режиме
Всем привет. Вроде делаю всё по примеру, но первый файл открывается, а второй файл (который...

Как открыть файл для чтения в БИНАРНОМ режиме?
Друзья! Файл, который надо открыть БИНАРНЫЙ, в нём два байта. Содержание файла 33 20 00 00 имя...

Сохранение структуры списка в бинарном виде в файл
Всем здравствуйте. Суть вопроса такова. Есть двусвязный список сделанный собственноручно без...

Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно?
Знаю как записывать объекты в файл в бинарном виде, но как быть, когда у них динамические поля?...

3
09.10.2018, 22:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.10.2018, 22:39
Помогаю со студенческими работами здесь

Как открыть файл в 16 виде
Как открыть файл в шестнадцятиричном виде? Добавлено через 8 минут Вернее посмотреть даные...

Как открыть файл в виде набора символов?
Ну никак не могу понять как открыть файл любого типа(не только тхт) в виде текста(имею в виду набор...

Открыть ftp.exe, открыть соединение с FTP-сервером, залогиниться, загрузить файл в бинарном режиме и выйти
С помощью .bat мне нужно открыть ftp.exe, открыть соединение с ftp сервером, залогиниться, залить...

Как считать файл в бинарном виде?
как считать абсолютно любой файл в бинарном виде (в виде двоичного кода) и записать эти данные,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru