Модераторы: feodorv, GremlinProg, xvr, Fixin

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запись в файл 
:(
    Опции темы
_hunter
Дата 18.4.2006, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



можно. ReadFile в соотв. буффер.
непонятно какая инфа ( кроме той, что есть в MSDN тебе нужна ) 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 18.4.2006, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



hunter  тебе:
У меня вопрос по предыдущей теме
Прога идёт!
Код
 
char str[]="Hello\0";
DWORD number; 
   WriteFile(hFile,str,sizeof(str),&number,NULL);
   WriteFile(hFile,"\r\n", 2, &number, NULL); 

А эта нет
Код
 
char *buf;// куда записываем
float val=1234.56;//что записываем
int digits =6;//кол-во цифр, которые будут записаны
DWORD number;

   gcvt(val, digits, buf);
   WriteFile(hFile,buf,7,&number, NULL);
   WriteFile(hFile,"\r\n",2,&number, NULL); 

Error: в строке WriteFile(hFile,"\r\n",2,&number, NULL); 

Если убрать в обоих прогах WriteFile(hFile,"\r\n",2,&number, NULL); 
то идут обе.

Инфв
В inete встречается и на русском с подробным описанием 
PM MAIL   Вверх
_hunter
Дата 18.4.2006, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



во-первых: что значит "не идет" и что значит "Error"
во-вторых: а память под buf кто выделять будет? 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 18.4.2006, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



hunter ты прав  

память выделил (или распределил)  

Это сообщение отредактировал(а) ferum - 18.4.2006, 18:06
PM MAIL   Вверх
ferum
Дата 18.4.2006, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как узнать размер файла ?
(может есть какая функция)

  

Это сообщение отредактировал(а) ferum - 18.4.2006, 21:40
PM MAIL   Вверх
_hunter
Дата 19.4.2006, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



есть.
называется она ( как ни странно ) GetFileSize 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 19.4.2006, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



 hunter:  спасибо
я уже узнал smile
у меня вот с этой function возник вопрос
Как выделить память для size
DWORD size=GetFileSize (hFile, NULL);

 
PM MAIL   Вверх
_hunter
Дата 19.4.2006, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



примерно так:
char* buffer = new char[size]; 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 19.4.2006, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Не получается

Кусочек проги
Код
 
number=0;
DWORD size=GetFileSize (hFile, NULL);
char* buffer = new char[size];
ReadFile (hFile,(void*)buffer,size, &number, NULL); 
   

Это сообщение отредактировал(а) ferum - 19.4.2006, 15:23
PM MAIL   Вверх
_hunter
Дата 19.4.2006, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



что не получается? 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 19.4.2006, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



походу не может выделить память под size
на 3-ей строке происходит стопор. 
PM MAIL   Вверх
_hunter
Дата 19.4.2006, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



что значит "не может"?
что значит "происходит стопор"? ( причем на третьей строке ты размер файла определяеш )
учись правильно задавать вопросы -- чтобы информацию из тебя побитно вытаскивать не приходилось... 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 19.4.2006, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вот такая вот непоняточка
Прога большая память уже загружена на другие переменные и на size
памяти не хватило (и надо её распределить для size).
Вот я думаю как распределить память с помощью (calloc,malloc)

В size память не выделяется, 
поэтому в size не записывается размер файла
Соответственно в переменную buffer ничего не записывается.

 
PM MAIL   Вверх
_hunter
Дата 19.4.2006, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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



шутки шутим? 4-х байт на стеке не хватило? еще и безо всяких сообщений об этом?..
явно с хендлом файла накосячил... 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ferum
Дата 19.4.2006, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



С хЭндлом не мог. 
Он у меня используется только один раз при создании файла. 
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


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

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


 




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


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

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