Поиск:

Ответ в темуСоздание новой темы Создание опроса
> LoadFromFile, SaveToFile разные результаты, Чтение -- запись, результат разный =( 
:(
    Опции темы
dampilster
Дата 19.12.2008, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 19.12.2008

Репутация: нет
Всего: нет



Сабж, делаю банальное чтение файла, а потом запись, но резульаты разные! Размер исходного примерно 1,332 а результат конечного, 1,227. Куда деваются эти килобайты? И как обойти эту проблему?

Код


TStringList *file= new TStringList;

file->LoadFromFile("files//test.txt");

file->SaveToFile("files//lalala.txt");



Зарание спасибо.

Это сообщение отредактировал(а) dampilster - 19.12.2008, 17:11
PM MAIL   Вверх
Alca
Дата 19.12.2008, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 25
Всего: 50



А ты сравни файлы по содержимому в бинарном режиме.
Вот прога: IDM UltraCompare Professional 6.00.2, которая умеет сранивать файлы.
Скорее всего "\r\n" заменяется на "\n".


--------------------
PM WWW ICQ Skype Jabber   Вверх
Artemon
Дата 19.12.2008, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 7
Всего: 20



Код

FILE* f = fopen("test.txt", "rb");
fseek(f,0,SEEK_END);
DWORD Fsize = ftell(f);

char* data = new char[ Fsize ];

fseek(f,0,SEEK_SET);
fread(data,  Fsize, 1, f);

FILE* f = fopen("lalala.txt", "wb");
fwrite(data,  Fsize, 1, f);


Добавлено через 4 минуты и 22 секунды
Код

FILE* f = fopen("test.txt", "rb");
fseek(f,0,SEEK_END);
DWORD Fsize = ftell(f);

char* data = new char[ Fsize ];

fseek(f,0,SEEK_SET);
fread(data,  Fsize, 1, f);

FILE* f = fopen("lalala.txt", "wb");
fwrite(data,  Fsize, 1, f);



--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
dampilster
Дата 19.12.2008, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 19.12.2008

Репутация: нет
Всего: нет



Вообще проблема заключается в том, что мне нужно оперировать с содержимым файла, но оно не считывается до конца (тупо берёт, и кусок не считывается) может LoadFromFile находил например символ \0 типа конец строки или файла?
PM MAIL   Вверх
dampilster
Дата 19.12.2008, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 19.12.2008

Репутация: нет
Всего: нет



Да, похоже в файле встречаюся символы \0 и строка не читается после них, подскажите как их можно убрать?
PM MAIL   Вверх
mrbrooks
Дата 20.12.2008, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



dampilster, StringReplace думается спасет отца русской демократии.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0456 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.