Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Министерство образования Республики Беларусь




УО “Барановичский государственный университет”

 

 

Инженерный факультет

 

Кафедра информационных систем и технологий

 

Программирование сетевых приложений

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

Вариант №5

 

Выполнил:

Студент группы ИСТ-31

Корсиков Р.Д.

Проверил:

Рогозик А.С.

 

 

Барановичи, 2014

Тема: Потоки ввода-вывода и работа с файлами. Многопоточность

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

Задание 1: Написать программу с графическим интерфейсом пользователя для работы с файловой системой согласно варианту задания.

Варианты заданий:

5. Написать программу для записи строковых данных в файл и считывания их из файла.

Код программы: package lab;

import java.io.IOException;

import java.util.logging.Level;

import java.util.logging.Logger;

 

public class lab extends javax.swing.JFrame {

public lab() {

initComponents(); }

@SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

jScrollPane1 = new javax.swing.JScrollPane();

jTextArea1 = new javax.swing.JTextArea();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jButton3 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jTextArea1.setColumns(20);

jTextArea1.setRows(5);

jScrollPane1.setViewportView(jTextArea1);

jButton1.setText("Save");

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton1ActionPerformed(evt); } });

jButton2.setText("Open");

jButton2.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton2ActionPerformed(evt); } });

jButton3.setText("Exit");

jButton3.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton3ActionPerformed(evt); } });

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()

.addContainerGap(34, Short.MAX_VALUE)

.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(76, 76, 76))

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()

.addContainerGap()

.addComponent(jScrollPane1)

.addContainerGap()));

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()

.addContainerGap()

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE, false)

.addComponent(jButton1)

.addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.addComponent(jButton3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 254, Short.MAX_VALUE)

.addContainerGap())); pack(); }// </editor-fold>

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

System.exit(0);

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

String str;

str=System.getProperty("user.dir.dir");

try {

try (java.io.FileOutputStream fout = new java.io.FileOutputStream(str+"mydata.txt")) {

fout.write(jTextArea1.getText().getBytes()); } }

catch(java.io.FileNotFoundException e) {

jTextArea1.setText("DO NOT SAVE!");

} catch (IOException ex) {

Logger.getLogger(lab.class.getName()).log(Level.SEVERE, null, ex); } }

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

jTextArea1.repaint();

String str1;

str1=System.getProperty("user.dir.dir");

try {

try (java.io.FileInputStream fin = new java.io.FileInputStream(str1+"mydata.txt")) {

StringBuilder str = new StringBuilder();

int symb;

while((symb=fin.read())!=-1) {

str.append((char) symb); }

jTextArea1.setText(str.toString()); }

} catch(java.io.FileNotFoundException e) {

jTextArea1.setText("File Not Found!");

} catch (IOException ex) {

Logger.getLogger(lab.class.getName()).log(Level.SEVERE, null, ex); } }

/**

* @param args the command line arguments

*/

public static void main(String args[]) { /* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/ try {

for (javax.swing.UIManager.LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break; }

} } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(lab.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); }

//</editor-fold> /* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

@Override

public void run() {

new lab().setVisible(true); } }); }

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JButton jButton3;

private javax.swing.JScrollPane jScrollPane1;

private javax.swing.JTextArea jTextArea1;}

Открытие:

Сохранение:






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных