Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Загрузка массива из файла 
:(
    Опции темы
Toland2
Дата 2.11.2011, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Уважаемые программисты, подскажите пожалуйста как загрузить содержимое файла в двумерный массив.

Вот сам txt Файл:
11111111111111111111
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000020000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
10000000000000000001
11111111111111111111

Пока получилось только вот это:
Код

FILE *f;
Char massiv[15][20];
 if(f=fopen("file.txt","r"))
 {
   for(int y=0;y<15;y++)
      {
         for(int x=0;x<20;x++)
             {

              }
        }
   }


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


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Во-первых, почему двумерный, если в примере только один столбец? Во-вторых, в чём именно вопрос?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Toland2
Дата 2.11.2011, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Нужно загрузить цифры из файла в массив так, что бы каждая цифра была в своем элементе массива
PM MAIL   Вверх
Данкинг
Дата 2.11.2011, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Не особо понял, но грузи в StringList и проходи его построчно-посимвольно.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Toland2
Дата 2.11.2011, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо. Я именно так сейчас и пытаюсь))
PM MAIL   Вверх
BenGan
Дата 2.11.2011, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А я очень люблю вот такую конструкцию:

Описывем сколь угодно сложную структуру данных
Цитата

typedef struct DBFHEAD4 {
   unsigned char Id;           /* 1 Битовый идентификатор (03)*/
   unsigned char date[3];      /* 3 Последнее обновление */
   __int32 reccount; /* 4 Количество записей*/
   __int16  headlengt;    /* 2 Длинна от начала до данных +1*/
   __int16  reclengt;     /* 2 Длинна одной записи */
   unsigned char tranzact;     /* 1 Задержка по транзакции 1/0 */
   unsigned char reserv[19];   /* 19  резерв  (итого 32 байта )*/
   } DBFHEAD4;


Создаем структуру Dh4 по шаблону DBFHEAD4 (резервируем память).
Цитата

DBFHEAD4 Dh4;


Читаем от начала файла разом всю структуру, какая-бы сложная она не была.
Цитата

fseek(fpbase, 0L, SEEK_SET);
fread(&Dh4, sizeof(DBFHEAD4), 1, fpbase);


Для повторяющихся записей можно организовать массив структур и читать их в цикле. Я так работал с DBF форматом. 

Цитата

Нужно загрузить цифры из файла в массив так, что бы каждая цифра была в своем элементе массива
 

Каждая переменная автоматически попадает на свое место. Если у Вас размер массива постоянен - достаточно один раз  описать его и один раз загрузить. И никаких циклов.




Это сообщение отредактировал(а) BenGan - 2.11.2011, 21:51
PM MAIL   Вверх
Toland2
Дата 7.11.2011, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Большое спасибо, BenGan. Очень полезная вещь!
PM MAIL   Вверх
borisbn
Дата 7.11.2011, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Код

FILE *f;
Char massiv[15][20];
 if(f=fopen("file.txt","r"))
 {
   for(int y=0;y<15;y++)
      {
         for(int x=0;x<20;x++)
             {
                   fscanf( f, "%c", &massiv[ y ][ x ] );
              }
        }
   }



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

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

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

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

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


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

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


 




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


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

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