Форум программистов, компьютерный форум CyberForum.ru

некорректно читает из файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поразрядный оператор И, и его работа http://www.cyberforum.ru/cpp-beginners/thread644267.html
void disp(unsigned u){ for(int t = 128; t > 0; t = t/2) if(u & t)cout << "1 "; else cout << "0 "; cout << endl; Скажем "u = 1", далее - переобразование: 0000 0001 & 1000 0000, 0100 0000, 0010 0000, 0001 0000, 0000 1000, 0000 0100, 0000 0010, 0000 0001, цикл завершон. Самое интересное как оператор переобразует, сравнивает и выводит на экран << 0000 0001 ? Или я чтото непонимаю.
C++ Как в signed char помещается диапазон -128,127 ведь если 127 это 01111111, то -127 должно быть 11111111 Добрый вечер! ломаю голову над тем, как в signed char помещается диапазон -128,127 ведь если 127 это 01111111, то -127 должно быть 11111111, а чему же тогда равно -128 в binary? http://www.cyberforum.ru/cpp-beginners/thread644251.html
Устройство антивирусной программы C++
Всем привет. Предстоит разработка антивирусного программного обеспечения на С++. Подскажите какую-нибудь литературу, где подробно рассматривается работа антивируса.
C++ Как понять данный кусок кода
Имеется некий абстрактный класс. от него имеется производный класс Задание работа с данными(чтение из файла, запись в файл) средствами Си и С++ Имеется кусок когда, помогите пожалуйста разобрать class Plate: public AbstractPlate { public: // Конструктор класса. Plate(){} // Перегрузки операций помещения в поток и выборки из потока. // Для ввода в файл.
C++ Typename и Class http://www.cyberforum.ru/cpp-beginners/thread644206.html
Между записью template <class T> и template <typename T> нет никакой разницы?
C++ Шаблоны и error C2664 Всем доброго времени суток!!! В общем, есть класс template <class Info> class SimpleClientManager { public: SimpleClientManager(unsigned int max_cnt); virtual ~SimpleClientManager(); virtual bool insert(ClientInfo<Info> *client); подробнее

Показать сообщение отдельно
smertnik
1 / 1 / 0
Регистрация: 06.08.2008
Сообщений: 55
30.08.2012, 11:32  [ТС]     некорректно читает из файла
там всякие символы попадаются, но они бед не создают! мне важно любой символ в биты перегнать, а 0D просто лишним появлялся! вобщем я испробовал все комбинации fread fwrite, handle read write, в различных режимах и чтения и записи и везде такой косяк... но вот предложенный вариант с fstream дал то что нужно! причем в буфере 0D есть, а при записи его уже нет! с буфера его убрать уже не проблема! конструкция получилась такая:
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
#include <iostream>
#include <fstream>
#include <sys\stat.h>
using namespace std;
char *bytef; 
 
 int main()
{
    int length;
    struct stat statbuf;
    stat(path.c_str(),&statbuf);
    bytef=new char[statbuf.st_size];   \\в примере размер файла 369 байт
 
    fstream f(path.c_str(), ios::in | ios::binary);
    fstream fw("rez.txt", ios::out | ios::binary);
    
    f.read(bytef, statbuf.st_size);
    length=strlen(bytef);     \\после чтения bytef стал 374 байта (+5 0D)
    fw.write(bytef, statbuf.st_size);    \\записал 369 байт и получилась копия path.c_str() без 0D
 
    f.close();
    fw.close();
    
    return 0;
}
 
Текущее время: 04:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru