Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > [C++ WinAPI]Байты - запись, чтение, преобразование |
Автор: Emura 27.4.2009, 15:38 |
перековыливаю на c++ с c#. добрался вот и до стадии работы с байтами в отношении записи, чтения, преобразования. подскажите пожалуйста знающие люди. задача: - сохранять данные в файл, читать, преобразовывать при записи типы в байты, при чтении - из байт в нужные типы. вопросы: 1. в c# использовал System.IO.BinaryWriter.(Write, Read), System.IO.MemoryStream(Write, Read), как быть с c++? 2. в c# для преобразования байт в тип удобно использовать c#класс BitConverter, а в c++ что посоветуете? (переобразовывать требуется в числа(int, double, float), в строки wide char string.) |
Автор: Lazin 27.4.2009, 15:47 |
std::stringsteram, std::strstream |
Автор: azesmcar 27.4.2009, 15:54 |
Emura Для файлов std::ofstream, std::ifstream #include <fstream> |
Автор: GremlinProg 27.4.2009, 16:01 |
пожалуй, это в общие вопросы |
Автор: GremlinProg 27.4.2009, 16:01 |
Перемещено в "С/C++ общие вопросы" |
Автор: Emura 27.4.2009, 16:04 | ||
azesmcar, Lazin ок, спасибо за наводку. Lazin это к первому или второму вопросу?)
GremlinProg, да, скорей всего, извиняюсь, не подумал. ps.буду благодарен минимальным примерам ![]() |
Автор: Lazin 27.4.2009, 16:14 |
iostreams, это для чтения и записи данных в файлы(память) для работы с битами в байтах используй логические операции, | & ^ ~ Добавлено через 35 секунд ах да, чуть не забыл: RTFM!!! ![]() |
Автор: GoldFinch 27.4.2009, 16:34 |
winapi это ReadFile\WriteFile |
Автор: Alca 27.4.2009, 17:49 |
http://www.cplusplus.com/reference/iostream/ |
Автор: Emura 27.4.2009, 17:50 | ||
а в чем заключается преимущество этого подхода? Alca, вот спасибо, дельная ссылка. |
Автор: GoldFinch 27.4.2009, 17:52 |
Emura, в названии твоей темы, она называется [С++ WinAPI] ... |
Автор: Emura 27.4.2009, 18:03 | ||
GoldFinch, это она от туда перемещена ![]() ребят, подскажите пожалуйста простеший пример с использованием вот этого дела
по сути надо прочитать файл в память, а там разбирать байты. работа на уровне бит не требуется. ps попутно читаю доки |
Автор: azesmcar 27.4.2009, 18:23 |
http://www.cplusplus.com/doc/tutorial/files/ Вот..тут полно примеров |
Автор: Emura 27.4.2009, 18:32 |
azesmcar, спасибо, попробую чтонибудь сочинить.. |
Автор: Alca 27.4.2009, 19:50 | ||
|
Автор: Emura 27.4.2009, 20:45 | ||
Alca, спасибо за пример, получил полезную информацию. вот собственно что навоял
покритикуйте плз. родились пару вопросов: 1. зачем указывать все время (char*) ?... хотя это и не влияет на результат, при использовании не чара. 2. до каких размеров информации адекватно использовать данный способ? 3. и еще. если stream не закрыть, то файл возможно удалить (видимо это можно сделать и при чтении\записи) ![]() |