Поиск:

Ответ в темуСоздание новой темы Создание опроса
> istream::readsome() 
:(
    Опции темы
asdf
Дата 7.5.2006, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 27.8.2004
Где: Кишинёвъ

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



Код
string File::FileToStr(const char *a)
{
  string res;
  ifstream if1(a);
  char read[MAX_SIZE];
  int bytesRead;
  //int foo=if1.tellg();
  while ( (bytesRead=if1.readsome(read, sizeof read-1))>0 ) {
    read[bytesRead]='\0';
    res+=read;
  }
  if1.close();
  return res;
}

работало на Билдере 6-ом, на Visual C++ , если не ошибаюсь 2003-й студии (версия - 7.1.3088) - не идёт..

if1.fail() с конструктора равен false .
if1.tellg() равен 0
и if1.readsome() с первого захода выдаёт 0 не изменяя массив read.


что как исправить?  

 smile 
 
--------------------
... 
PM MAIL   Вверх
Любитель
Дата 7.5.2006, 23:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Во-первых, почему readsome, а не read?
Во-вторых, проверь на is_open. 


--------------------
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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