79 / 67 / 28
Регистрация: 22.04.2016
Сообщений: 384
1

Открытие файла без типа

01.10.2017, 13:11. Показов 1513. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В общем, возникла потребность в открытии файла без типа. Такими файлами являются файлы кеша браузера firefox, которые можно открыть с помощью любого hex editor'a.

Захотелось и самому реализовать что-то подобное на С++.
Пробую следующим образом:
C++
1
2
std::ifstream is("D:\\1F3B35D2FF32FC9AAE07EA7F52B6366829F2A42B", std::ios::binary);
std::cout << is.rdbuf() << std::endl;
Однако, буфер пустой, т.е. ничего туда не записалось.
В то время, как открытие какого-то другого файла, например формата .txt, в буфер записывается все содержимое файла.

Как же тогда можно открыть этот файл без типа и прочитать его содержимое?

P.S. Файл прикрепляю.
Вложения
Тип файла: rar 1F3B35D2FF32FC9AAE07EA7F52B6366829F2A42B.rar (2.3 Кб, 2 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2017, 13:11
Ответы с готовыми решениями:

VB.NET. Открытие внедрённого файла без "New"
Как открыть файл не создавая новый? Пробовал через GetObject - ничего не получается. Буду очень...

Открытие html без exe-файла броузера
Возможно ли открыть html файл любым броузером(ассоциированным в винде с типом файлов) из проги без...

Открытие файла в папке с программой без указания полного пути
Есть такая строчка z = Shell(&quot;C:\WINDOWS\Notepad.exe D:\vb\проверка знаний\all.txt&quot;) Т.е с...

Файлы без типа. Значения компонент файла с четными номерами заменить нулями
Создать файл, компоненты (количество &lt;=10) которого являются вещественными числами. После создания...

3
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
01.10.2017, 13:34 2
Лучший ответ Сообщение было отмечено igdev как решение

Решение

igdev,
1. Все файлы на компьютеры хранятся в байтах. Последний несколько символов в названии файла после точки, это лишь для того, чтобы операционная система понимала какой программой открыть этот файл, автоматически, без подсказок.
2. У меня данный код работает исправно. Выводит все содержимое данного файла (имя файла и содержимой не менял).
1
Модератор
Эксперт С++
13498 / 10752 / 6407
Регистрация: 18.12.2011
Сообщений: 28,692
01.10.2017, 13:35 3
public member function
<ios> <iostream>
std::ios::rdbuf
get (1)

streambuf* rdbuf() const;

set (2)

streambuf* rdbuf (streambuf* sb);

Get/set stream buffer
The first form (1) returns a pointer to the stream buffer object currently associated with the stream.
Почему Вы решили, что данные файла уже должны оказаться в буфере?
Попыток чтения, ведь, не было!
1
79 / 67 / 28
Регистрация: 22.04.2016
Сообщений: 384
01.10.2017, 14:31  [ТС] 4
pav1uxa,
Цитата Сообщение от pav1uxa Посмотреть сообщение
У меня данный код работает исправно. Выводит все содержимое данного файла
Да, действительно. Все выводит исправно. Хотя до этого такого не было. Возможно, что все поправилось после того, как пересобрал проект. Всем спасибо! Тема закрыта!
0
01.10.2017, 14:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.10.2017, 14:31
Помогаю со студенческими работами здесь

Файлы без типа: поменять местами второе и предпоследнее значение компонентов файла
Создать файл, компоненты (&lt;=7) которого являются натуральными числами. После этого поменять местами...

Создать файл без типа. Заменить значение первой компоненты файла на значение последней
Создать файл, компоненты (количество &lt;=7) которого являются целыми числами. После создания файла...

Как преобразовать число типа int в строку типа string без методов-конвертов на C#?
В общем, все что выше написано. Пишу в Visual Studio на C#. Преобразовать без конвертирования,...

Написать текстовый редактор, в котором продемонстрировать открытие файла, сохранение файла, создание нового файла
№ 5. Написать текстовый редактор, в котором продемонстрировать открытие файла, сохранение файла,...


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

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

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