51349

Расширенная работа с файлами

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы: Написать программу, осуществляющую запись массива в файл и чтение из файла в массив с помощью потоков. Рабочие данные выбрать самостоятельно.

Русский

2014-02-09

127 KB

2 чел.

Лабораторная работа 8

Расширенная работа с файлами

 Выполнил: Шуклецов М.А.

              ФРТ, гр. 2106

Цель работы: Написать программу,  осуществляющую запись массива в файл и чтение из файла в массив с помощью потоков. Рабочие данные выбрать самостоятельно.

Общий вид программы следующий: 

Здесь мы видим следующие элементы управления:

«Заполнение массива» - заполнение массива 10х10 случайными числами в интервале до 99

«Сохранение в фаил» - считывание в поток и сохранение в фаил *.txt

«Чтение из файла» - считывание из файла в поток и заполнение массива 2 из потока

Код программы:

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

TStringList *fil = new TStringList();  //инициализация потока

int a[10][10];    //массив 1

int b[10][10];    //массив 2(можно и без него)

AnsiString S;    //строковая переменная

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)   //заполнение случайными числами

{   for(int x=0; x<10; x++)

 { for(int y=0; y<10; y++)

       {

        StringGrid1->Cells[x][y] = random(99);

        a[x][y]=StrToInt( StringGrid1->Cells[x][y]);

       }

 }

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{  fil = new TStringList();  //Открытие потока

for(int y=0; y<10; y++)

       {for(int x=0; x<10; x++)

               {S = IntToStr(a[x][y]);  //запоминание ячейки

                fil->Append(S);                } //добавление в конец нужной ячейки

       }

       fil->SaveToFile("Test.txt");  //Сохранение потока в файл

      fil->Free();    //закрытие потока

      S = "";    //Обнуление переменной

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{ fil = new TStringList();   //Открытие потока

fil->LoadFromFile("Test.txt");  //Загрузка потока из файла

for(int y=0; y<10; y++)

       {for(int x=0; x<10; x++)

               {

              b[x][y] =StrToInt( fil->Strings[y*10+x]);  //Заполнение массива 2

              StringGrid2->Cells[x][y] = b[x][y];  //Заполнение StringGrid2

               }

       }

}

//---------------------------------------------------------------------------

Вывод:  Мы научились использовать потоки


 

А также другие работы, которые могут Вас заинтересовать

18767. Сущность и содержание паблик рилейшинз 29.44 KB
  Сущность и содержание паблик рилейшинз. Паблик рилейшинз и реклама. Существует более 500 определений пиар. Рэкс Харлоу предложил определение в котором попытался обобщить все 500 определений: PR это особая функция управления призванная устанавливать и поддерживать взаи...
18768. Избирательная компания как способ вовлечения молодого человека в политическую жизнь общества 25.07 KB
  Избирательная компания как способ вовлечения молодого человека в политическую жизнь общества. Избирательная компания как способ вовлечения в политическую жизнь общества. Избирательная компания это система агитационных мероприятий которые проводят политические...
18769. Место делового этикета в деятельности специалиста по работе с молодежью 26.06 KB
  Место делового этикета в деятельности специалиста по работе с молодежью. Деловые приемы их классификация и организация. Этикет слово французского происхождения. К этикету относят правила учтивости и вежливости принятые в обществе. В основе этикета лежат правила по...
18770. Государственная и муниципальная служба 25.43 KB
  Государственная и муниципальная служба. Понятие закон о государственной службе. Долгое время не существовало общепринятого определения государственной службы. Государственная служба понимается в широком и узком смысле. Государственная служба в широком смысле сво...
18771. Конфликт как социальное явление 28.86 KB
  Конфликт как социальное явление. Понятие и сущность. Динамика конфликта. Классификации конфликтов по различным основаниям. Гендерные особенности поведения в конфликтных ситуациях. Конфликты в молодежной среде. Понятие и сущность. Конфликт лат. conflictus столкновение...
18772. Управление конфликтами. Методы урегулирования конфликтов 38.77 KB
  Управление конфликтами. Типы конфликтоной личности. Методы урегулирования конфликта: компромисс консенсус. Причины возникновения и способы решения управление следующими видами конфликтов: внутриличностных межличностных семейных организационно-управленческих...
18773. Социальное проектирование как основа реализации молодежной политики 39.52 KB
  Социальное проектирование как основа реализации молодежной политики. Социальный проект как механизм решения социальной проблемы. Проект это уникальный процесс состоящий из совокупности скоординированных и управляемых действий с начальной и конечной датами пре...
18774. Управление проектами в молодежной среде 55.58 KB
  Управление проектами в молодежной среде. Общее представление об управлении проектами. Проект это уникальная деятельность имеющая начало и конец во времени направленная на достижение определенного результата/цели создание определенного уникального продукта или...
18775. Некоммерческая организация (НКО): понятие, цели создания, организационно-правовые формы 39.86 KB
  Некоммерческая организация НКО: понятие цели создания организационноправовые формы. Создание НКО и учредительные документы устав учредительный договор основание порядок заключения. Некоммерческой организацией является организация не имеющая извлечение пр