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

               }

       }

}

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

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


 

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

80620. Україна — рідний край. Вступ до розділу 71.5 KB
  Мета: дати дітям загальне уявлення про розташування України на карті; ознайомити з різноманітністю форм земної поверхні України водоймами природними зонами населенням; розвивати вміння та навички пошукової роботи; виховувати дбайливе ставлення до природи.
80621. Повторення та закріплення знань про вивчені букви. Читання в особах тексту «Котик і Півник» 68.5 KB
  Хай радість злітає у небо як птах І добрі слова у всіх нас на устах. Читаємо слова разом. На дошці надруковані слова і звукові схеми у довільному порядку учні з’єднають схеми зі словами. Просить вашої допомоги скласти з цих літер різні слова і ви дізнаєтеся де вона живе.
80622. Закріплення букви «Пе». Текст Н. Тарасенко «На пасіці взимку» 38 KB
  Мета: закріпити вивчену букву Пе; розвивати вміння читати слова з буквою Пе; розвивати мовлення і мислення; виховувати бережливе ставлення до природи. Яку букву ми вивчали на попередньому уроці Звуковий аналіз слова півень. Повідомлення теми і мети уроку...
80623. Прямой, обратный счет. Плоские геометрические фигуры 50.5 KB
  Дети берутся за руки и становятся в круг. А теперь поделитесь хорошим настроением со своими друзьями погладьте друг другу ладошки и пожмите руки дети выполняют действие. Дети рассматривают 6 картинок первые буквы слов образуют слово ракета Какое слово получилось...
80624. Зв’язок слів у реченні між собою за змістом 82 KB
  Мета. Вчити учнів зв’язувати слова у реченні, удосконалювати вміння встановлювати межі речень; розвивати навички написання слів у реченні, формувати орфографічну увагу, виховувати уважне ставлення до природи Обладнання.
80625. Симетричні форми. Симетрія у природі. Послідовність дій під час виготовлення простих симетричних форм із паперу. Практична робота: вирізання деталей виробів симетричної форми; створення аплікацій із вирізаних простих симетричних форм «Грибочок» 30.5 KB
  Мета. Вчити дітей виготовляти предметні аплікації, ознайомити із способом симетричного вирізування. Розвивати просторове уявлення, дрібну моторику. Виховувати емоційне ставлення до результатів своєї праці, інтерес до секретів природи. Обладнання: зображення грибів, кольоровий папір, картон, клей, ножиці, шаблони.
80626. Письмо великої букви Ф 34.5 KB
  Мета: навчити учнів писати велику букву Ф окремоі в словах; розвивати вміння аалізувати, зіставляти, узагальнювати; продовжувати ознайомлювати учнів зі скоромовками; виховувати інтерес до вивченння української мови, Бережливе ставлення до природи.
80627. Здравствуй, гостья Зима! 33.5 KB
  Выпал пушистый снег. На дворах и домах Снег лежит полотном И от солнца блестит Разноцветным огнем. Как в третьей строфе поэт называет снег С чем он его сравнивает Здесь художник использует такое средство художественной выразительности как сравнение когда один объект сравнивается с другим...
80628. Поняття про мову. Українська мова – державна мова України 49.5 KB
  Мета: Розширити уявлення учнів про мову як найважливіший скарб українського народу, про існування різних мов; вчити спостерігати за звучанням, написанням і значенням слів у споріднених мовах. Розвивати усне мовлення учнів, каліграфічні навички письма, поширювати словниковий запас учнів.