Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Programa de Archivos en Java - Prof. Tulio, Apuntes de Aplicaciones de las Ciencias de la Computación

Un programa en java que permite la creación, inversión y visualización de archivos secuenciales. El programa cuenta con una interfaz gráfica de usuario (gui) que facilita la interacción con el usuario. Las principales funcionalidades incluyen: crear un archivo secuencial a partir de un nombre y contenido proporcionados por el usuario, invertir el contenido de un archivo existente y guardarlo en un nuevo archivo, y mostrar el contenido original y el contenido invertido de un archivo. El programa utiliza estructuras de datos como pilas y stringbuilder para implementar la funcionalidad de inversión de archivos. Este documento podría ser útil para estudiantes de programación en java que deseen aprender sobre el manejo de archivos y la creación de aplicaciones con interfaz gráfica.

Tipo: Apuntes

2021/2022

Subido el 28/05/2024

italo-harold-villalta-miranda
italo-harold-villalta-miranda 🇻🇪

1 documento

1 / 6

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Docente : Ing. Julio César Bermúdez
Nombre : Villalta Miranda Italo Harold
Materia : SIS2310 - A
Fecha de Entrega : 8 de mayo del 2023
_____________________________________________
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Stack;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class ProgramaArchivos extends JFrame {
private static final long serialVersionUID = 1L;
private JTextArea textoArchivoInvertido;
public ProgramaArchivos() {
super("Programa de archivos");
//initComponents();
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Programa de Archivos en Java - Prof. Tulio y más Apuntes en PDF de Aplicaciones de las Ciencias de la Computación solo en Docsity!

Docente : Ing. Julio César Bermúdez Nombre : Villalta Miranda Italo Harold Materia : SIS2310 - A Fecha de Entrega : 8 de mayo del 2023

_____________________________________________

import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Stack; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; public class ProgramaArchivos extends JFrame { private static final long serialVersionUID = 1L; private JTextArea textoArchivoInvertido; public ProgramaArchivos() { super("Programa de archivos"); //initComponents();

textoArchivoInvertido = new JTextArea(); // Crear panel de botones final JPanel panelBotones = new JPanel(); getContentPane().add(panelBotones, BorderLayout.CENTER); // Crear botones final JButton btnCrearArchivo = new JButton("Crear archivo secuencial"); final JButton btnInvertirArchivo = new JButton("Invertir archivo"); final JButton btnMostrarArchivo = new JButton("Mostrar archivo"); final JButton btnMostrarArchivoInvertido = new JButton("Mostrar archivo invertido"); // Agregar botones al panel panelBotones.add(btnCrearArchivo); panelBotones.add(btnInvertirArchivo); panelBotones.add(btnMostrarArchivo); panelBotones.add(btnMostrarArchivoInvertido); // Agregar oyentes a los botones btnCrearArchivo.addActionListener(new ActionListener() { @Override public void actionPerformed(final ActionEvent e) { final String nombreArchivo = JOptionPane.showInputDialog(ProgramaArchivos.this, "Ingrese el nombre del archivo:"); final String contenido = JOptionPane.showInputDialog(ProgramaArchivos.this, "Ingrese el contenido del archivo:"); ArchivoSecuencial.crearArchivoSecuencial(nombreArchivo, contenido); } }); btnInvertirArchivo.addActionListener(new ActionListener() { @Override public void actionPerformed(final ActionEvent e) {

private void mostrarVentanaArchivoInvertido() { final JFrame ventanaArchivoInvertido = new JFrame("Archivo invertido"); // Crear área de texto para el contenido del archivo invertido textoArchivoInvertido = new JTextArea(); textoArchivoInvertido.setEditable(false); // Agregar área de texto a un panel con scroll final JScrollPane scrollPane = new JScrollPane(textoArchivoInvertido); ventanaArchivoInvertido.getContentPane().add(scrollPane); // Configurar la ventana ventanaArchivoInvertido.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); ventanaArchivoInvertido.setSize(400, 300); ventanaArchivoInvertido.setVisible(true); } public static void main(final String[] args) { new ProgramaArchivos(); } } class ArchivoSecuencial { public static void crearArchivoSecuencial(final String nombreArchivo, final String contenido) { try (FileWriter archivo = new FileWriter(nombreArchivo)) { archivo.write(contenido); } catch (final IOException e) { e.printStackTrace(); }

class InvertirArchivo { public static String invertirContenido(final String nombreArchivo) { try (BufferedReader br = new BufferedReader(new FileReader(nombreArchivo))) { final Stack pila = new Stack<>(); String linea; while ((linea = br.readLine()) != null) { pila.push(linea); } final StringBuilder sb = new StringBuilder(); while (!pila.isEmpty()) { sb.append(pila.pop()); sb.append("\n"); } final String contenidoInvertido = sb.toString(); try (FileWriter archivo = new FileWriter("invertido_" + nombreArchivo)) { archivo.write(contenidoInvertido); } catch (final IOException e) { e.printStackTrace(); } return contenidoInvertido; } catch (final IOException e) { e.printStackTrace(); return null; } }