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

               }

       }

}

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

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


 

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

34033. Волюнтаризм Шопенгауэра 25.5 KB
  Интеллект утомляется а воля неутомима. Реальна только одна космически громадная воля которая проявляется во всем течении событий Вселенной: мир только зеркало этого воления выступающее как представление. Мир по Шопенгауэру нелеп а вся история мира это история бессмысленной флуктуации волевых искр когда воля вынуждена пожирать самое себя так как кроме нее ничего нет и она к тому же голодная и жестокая постоянно ткущая паутину страдания. Он подверг критике ошибочную позицию сторонников крайнего рационализма согласно которому...
34034. Философия экзистенцизма 33.5 KB
  Экзистенциализм Философия существования. изолированный одинокий индивид все интересы которого сосредоточены на нем же самом на его собственном ненадежном и бренном существовании. Экзистенциальные проблемы это такие пробл которые возникают из самого факта сущ человека. Для Э имеет значение только его собственное сущ и его движение к небытию.
34035. ФИЛОСОФИЯ В ЭПОХУ ПОСТМОДЕРНА 24 KB
  Осознание факта исчерпаемости энергии и земных ресурсов конечности не только человека но и человечества. Отказ от культа человека приводящему к забвению трансцендентного и пренебрежению к природе. Всеобщая единая действительность должна быть познана не через мир а через человека.
34036. Религиозная философия 25 KB
  Субстанционный мир мир находится в единстве с богом. Умственный мир умственноидеальная сфера. Чувственный мир мир людей.
34037. Философия Соловьева 23.5 KB
  В философии Соловьева как и в учении Гегеля онтология и гносеология бытие и познание неразделимы и опираются на единую основу. Соловьева поэтому всю его систему часто называют философией всеединства. Философия по мнению Соловьева возникает в период напряженного кризиса когда религиозная социальная роль не разрывает человеческое общество сознание.
34038. Установление ставок земельного налога. Льготы по взиманию земельного налога 36.5 KB
  ЗЕМЕЛЬНЫЙ НАЛОГ В 2011-2012 ГОДАХ. Земельный налог является местным налогом. на территории которой находится земельный участок. Земельный налог уплачивают организации и физические лица обладающие земельными участками на праве собственности праве постоянного бессрочного пользования или праве пожизненного наследуемого владения.
34039. Понятие и виды земельных споров. Виды и компетенция органов, уполномоченных разрешать земельные споры 35.5 KB
  Виды и компетенция органов уполномоченных разрешать земельные споры. Земельные споры. Как правило споры возникают в сфере использования земельных участков. Рассматривая земельные споры можно выделить 2 их вида.
34040. Правовой режим служебных земельных наделов 25 KB
  Основанием выделения работникам служебного земельного надела служит решение соответствующей организации о выделении работнику служебного земельного надела при наличии заявления работника. лесничий обязан предоставлять работникам государственной лесной охраны служебные земельные наделы и другие льготы предусмотренные законодательством. Увольнение работника из штата организации влечет за собой изъятие предоставленного земельного участка. В случае когда на служебном наделе произведен посев сельскохозяйственных культур право пользования...
34041. Правовой режим земель водного фонда 48 KB
  ЗЕМЛИ ВОДНОГО ФОНДА К землям водного фонда относятся: 1 земли занятые водными объектами; 2 земли водоохранных зон водных объектов; 3 земли выделяемые для установления полос отвода и зон охраны водозаборов гидротехнических сооружений и иных водохозяйственных сооружений и объектов. В частномельным MM с использованием воды изъятой из водных не водным а гражданским и иными отрас мьм жизни и деятел ьности е лями законодательства. водных отношении тесно вязаны Р территории Российской CoBOicynHWWSSrLS включению в...