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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> построчное считывание из файла 
:(
    Опции темы
yngwie19
Дата 30.10.2009, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 829
Регистрация: 15.6.2008
Где: Новгород

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



здравствуйте, есть txt файл такого типа
Код

Текст1
Текст2
Текст3
Текст4

мне нужно считать каждую строку этого файла и вывести с помощью printf(). Спасибо
PM MAIL   Вверх
andrew_121
Дата 30.10.2009, 19:43 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


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

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



yngwie19, 
Код

#include <stdio.h>
int main() {
   char str[32] = "\0";
   FILE* file = fopen("file.txt", "rt");
   if ( !file ) {
      perror("Can`t open file!");
      return 1;
   }
   while ( !feof(file) ) {
      fgets(str, sizeof(str), file);
      printf("%s\n", str);
   }
   fclose(file);
   return 0;
}



--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
yngwie19
Дата 30.10.2009, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 829
Регистрация: 15.6.2008
Где: Новгород

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



andrew_121, спасибо большое. А можно то же самое сделать, но с помощью ReadFile() ?
PM MAIL   Вверх
586
Дата 31.10.2009, 05:45 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(yngwie19 @  30.10.2009,  23:31 Найти цитируемый пост)
А можно то же самое сделать, но с помощью ReadFile() ? 

Прочесть кусок файла можно, прочесть одну строку - нет.
Если нужно просто вывести содержимое файла в консоль, то возможно:
Код
#include <windows.h>
#include <stdio.h>

int main()
{
    char buf[256];
    DWORD dwRead, dwWritten;

    HANDLE hFile = CreateFile("C:\\test.txt", GENERIC_READ, 3,
        NULL, OPEN_EXISTING, 0, NULL);
    if(hFile != INVALID_HANDLE_VALUE)
    {
        HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
        while(ReadFile(hFile, buf, sizeof(buf), &dwRead, 0) && dwRead)
            WriteFile(hStdOut, buf, dwRead, &dwWritten, NULL);

        CloseHandle(hFile);
    }
    else
    {
        fprintf(stderr, "CreateFile failed with code %u\n", GetLastError());
    }
    getchar();
}

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.1500 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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