Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Результаты работы программы. Введите имя города

Читайте также:
  1. Fidelio Front Office - система автоматизации работы службы приема и размещения гостей.
  2. FILTER – задает один из трех режимов работы ручкам FREQ и RESON
  3. II. Методика работы
  4. II. Методика работы.
  5. II. Методика работы.
  6. II. Методика работы.
  7. II. Методика работы.

Введите имя города

qwe

Введите кол-во мэров

Введите имя мэра

qwe

Кол-во голосов:

Добавился элемент в коллекцию?true

Добавился элемент?true

Ввести город?Да(1)/Нет(2)

Введите имя города

asd

Введите кол-во мэров1

Введите имя мэра

asd

Кол-во голосов:

Добавился элемент в коллекцию?true

Добавился элемент?true

Ввести город?Да(1)/Нет(2)

Первый элемент вектора

Город Мэр Кол-во голосов

qwe qwe 1

Последний элемент вектора

Город Мэр Кол-во голосов

asd asd 1

Исходные данные:

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

Исходные данные:

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

Добавилась коллекция в вектор?true

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

qwe qwe 1

asd asd 1

Введите имя города

cxz

Введите кол-во мэров

Введите имя мэра

cxz

Кол-во голосов:

Содержит вектор date объект A?true

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

cxz cxz 1

qwe qwe 1

asd asd 1

Добавилась коллекция в вектор?true

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

qwe qwe 1

asd asd 1

cxz cxz 1

qwe qwe 1

asd asd 1

Объем

Cодержится элемент в векторе?true

Cодержится коллекция в векторе?true

Объем

Объем

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

qwe qwe 1

asd asd 1

cxz cxz 1

qwe qwe 1

asd asd 1

cxz cxz 1

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

qwe qwe 1

asd asd 1

cxz cxz 1

qwe qwe 1

asd asd 1

cxz cxz 1

Cодержится элемент в векторе?false

Хэш код вектора

Пустой вектор?false

Очистелся вектор?true

Город Мэр Кол-во голосов

asd asd 1

Удалился объект vektor@c2ea3f?true

Удалилась колекция?true

Удалились все элементы кроме коллекции?true

Элементы в коллекции

Город Мэр Кол-во голосов

qwe qwe 1

asd asd 1

Элементы в векторе

Город Мэр Кол-во голосов

qwe qwe 1

qwe qwe 1

asd asd 1

qwe qwe 1

asd asd 1
Задание №7

Условие

Используя класс, созданный в задании №3 продемонстрировать работу с файлами. Последовательно записать в файл несколько объектов, затем произвести считывание записи с нужным номером.

Структура файла

Вданной программе запись в файл реализована следующим образом:

(количество объектов)(размер следующего объекта)(сам объект)(размер следующего объекта)(сам объект)

Графическая илюстрация:

Блок схема


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

import java.io.*;

public class InOutput {

static private int i, j, size;

public int kol[],kol_m;

private String name_city;

static public int sizeObject [];

private String name_mayor[];

static private String name_file ="D:\\write.txt";

static public int n;

//Метод ввода данных

public void Enter(){

Try

{

BufferedReader a= new BufferedReader(new InputStreamReader(System. in));

System. out. println("Введите имя города");

String ch;

ch=a.readLine();

name_city = new String(ch.toString());

sizeObject [ i ]= sizeObject [ i ]+name_city.length();

System. out. print("Введите кол-во меров");

ch=a.readLine();

kol_m=Integer. parseInt (ch.toString());

sizeObject [ i ]= sizeObject [ i ]+4;

name_mayor= new String[kol_m];

kol= new int [kol_m];

for (j =0; j <kol_m; j ++){

System. out. println("Введите имя мэра");

ch=a.readLine();

name_mayor[ j ] = new String(ch.toString());

sizeObject [ i ]= sizeObject [ i ]+name_mayor[ j ].length();

System. out. println("Кол-во голосов:");

ch=a.readLine();

kol[ j ] = Integer. parseInt (ch.toString());

sizeObject [ i ]= sizeObject [ i ]+4;

}

}

catch (IOException e){

System. out. println("gh");

}

}

//Метод записи в файл данных

public void write(){

try {

FileOutputStream outstream= new FileOutputStream(name_file, true);

BufferedOutputStream bufout= new BufferedOutputStream(outstream);

DataOutputStream out= new DataOutputStream(bufout);

out.writeBytes(name_city);

out.writeInt(kol_m);

for (j =0; j <kol_m; j ++){

out.writeBytes(name_mayor[ j ]);

out.writeInt(kol[ j ]);

}

out.close();

}

catch (FileNotFoundException e){

System. out. println("Невозможно произвести запись в файл: " + name_file);

}

catch (IOException e){

System. out. println("Ошибка ввода/вывода: " + e.toString());

}

}

//Метод чтение записи номер, которой введен с клавиатуры

public int read(){

try {

File instream= new File(name_file);

RandomAccessFile in= new RandomAccessFile(instream,"r");

size =in.readInt();

System. out. println("В файле "+ size +" записей");

int sizeO[]= new int [ size ];

for (i =0; i < size; i ++){

sizeO[ i ]=in.readInt();

}

System. out. println("Введите номер записи которую надо прочесть");

BufferedReader a= new BufferedReader(new InputStreamReader(System. in));

String ch=a.readLine();

int nomer =Integer. parseInt (ch.toString());

int sum=16;

for(i=0;i<nomer-1;i++){

sum=sum+sizeO[i];

}

in.seek(sum);

byte [] arr= new byte [3];

in.read(arr);

name_city= new String(arr);

kol_m=in.readInt();

name_mayor= new String[kol_m];

kol= new int [kol_m];

for (i =0; i <kol_m; i ++){

in.read(arr);

name_mayor[ i ]= new String(arr);

kol[ i ]=in.readInt();

}

in.close();

return nomer;

}

catch (FileNotFoundException e){

System. out. println("Невозможно произвести запись в файл: " + name_file);

}

catch (IOException e){

System. out. println("Ошибка ввода/вывода: " + e.toString());

}

return 0;

}

//Метод печати объекта

public void Print(){

for (j =0; j <kol_m; j ++){

System. out. print(name_city+" "+name_mayor[ j ]+" "+kol[ j ]+"\n");

}

}

public static void main(String[] args){

try {

BufferedReader a= new BufferedReader(new InputStreamReader(System. in));

System. out. print("Введите кол-во строк в таблице");

String ch=a.readLine();

n = Integer. parseInt (ch.toString());

System. out. println("n=" + n);

}

catch (IOException e){

System. out. println("df");

}

sizeObject = new int [ n ];

InOutput A[]= new InOutput[ n ];

for (i =0; i < n; i ++){

A[ i ]= new InOutput();

A[ i ].Enter();

}

System. out. println("Исходные данные:");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i < n; i ++)

A[ i ].Print();

System. out. println("Запись в файл"+ name_file);

try {

FileOutputStream outstream= new FileOutputStream(name_file);

BufferedOutputStream bufout= new BufferedOutputStream(outstream);

DataOutputStream out= new DataOutputStream(bufout);

out.writeInt(n);

for (i =0; i < n; i ++){

out.writeInt(sizeObject [ i ]);

System. out. println("sizeObject="+ sizeObject [ i ]);

}

out.close();

}

catch (FileNotFoundException e){

System. out. println("Невозможно произвести запись в файл: " + name_file);

}

catch (IOException e){

System. out. println("Ошибка ввода/вывода: " + e.toString());

}

for (i =0; i < n; i ++)

A[ i ].write();

System. out. println("Файл сформирован"+ name_file);

InOutput B= new InOutput();

int nomer=B.read();

System. out. println(nomer+" Запись");

System. out. print("Город Мэр Кол-во голосов\n");

B.Print();

}

 

 

}

 

 


Дата добавления: 2015-10-29; просмотров: 46 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Результаты работы программы| Требования к программе

mybiblioteka.su - 2015-2024 год. (0.021 сек.)