From 4c6e932c2c71be3e78ad6a6f2f007a58695f331a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isidoro=20Nevares=20Mart=C3=ADn?= Date: Mon, 10 Nov 2025 10:03:07 +0100 Subject: [PATCH] primer commit --- .classpath | 40 +++++++ .gitignore | 2 + .project | 23 ++++ .settings/org.eclipse.jdt.core.prefs | 8 ++ .settings/org.eclipse.m2e.core.prefs | 4 + .../Gastos-Ingresos_Hiperbaric_2024-2025.xlsx | Bin 0 -> 12006 bytes pom.xml | 21 ++++ .../lapaloma/proyectosies/AppPrincipal.java | 101 ++++++++++++++++++ 8 files changed, 199 insertions(+) create mode 100644 .classpath create mode 100644 .gitignore create mode 100644 .project create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 .settings/org.eclipse.m2e.core.prefs create mode 100644 ficheros/Gastos-Ingresos_Hiperbaric_2024-2025.xlsx create mode 100644 pom.xml create mode 100644 src/main/java/org/lapaloma/proyectosies/AppPrincipal.java diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..f7e4a1d --- /dev/null +++ b/.classpath @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9f1d3ca --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/target/ +*.class \ No newline at end of file diff --git a/.project b/.project new file mode 100644 index 0000000..76c61c3 --- /dev/null +++ b/.project @@ -0,0 +1,23 @@ + + + ProyectosIES-Excel + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..2f5cc74 --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/ficheros/Gastos-Ingresos_Hiperbaric_2024-2025.xlsx b/ficheros/Gastos-Ingresos_Hiperbaric_2024-2025.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..3e94d0d70688264637296c053d9f2458b10c48c1 GIT binary patch literal 12006 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 vU*Rh>e}Vtuhkr%?YLb8AA>RJ}_ + 4.0.0 + ProyectosIES-Excel + ProyectosIES-Excel + 0.0.1-SNAPSHOT + + + + org.apache.poi + poi + 5.4.0 + + + + + org.apache.poi + poi-ooxml + 5.4.0 + + + \ No newline at end of file diff --git a/src/main/java/org/lapaloma/proyectosies/AppPrincipal.java b/src/main/java/org/lapaloma/proyectosies/AppPrincipal.java new file mode 100644 index 0000000..6b03d71 --- /dev/null +++ b/src/main/java/org/lapaloma/proyectosies/AppPrincipal.java @@ -0,0 +1,101 @@ +package org.lapaloma.proyectosies; + +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.util.Date; + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.ss.usermodel.WorkbookFactory; + +public class AppPrincipal { + private static int INDICE_GASTOS = 0; + private static int INDICE_INGRESOS = 1; + + public static void main(String[] args) { + AppPrincipal app = new AppPrincipal(); + try { + File f = new File("ficheros/Gastos-Ingresos_Hiperbaric_2024-2025.xlsx"); + InputStream inputStream = new FileInputStream(f); + Workbook libroHiperbaric= WorkbookFactory.create(inputStream); + + Sheet hojaGastos = libroHiperbaric.getSheetAt(INDICE_GASTOS); + + app.tratarGastosExcel(hojaGastos); + + Sheet hojaIngresos=libroHiperbaric.getSheetAt(INDICE_INGRESOS); + app.tratarGastosExcel(hojaIngresos); + + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + private void tratarIngresosExcel(Sheet hojaIngresos) throws Exception { + + int filaInicio = 3; // En la fila 3 comienzan los datos. + + Row filaTrabajo = hojaIngresos.getRow(filaInicio); // En qué fila empezar ya dependerá también de si tenemos, por + // ejemplo, el título de cada columna en la primera fila + while (filaTrabajo != null) { + // Concepto - celda 1 + Cell celdaConcepto = filaTrabajo.getCell(1); + String concepto = celdaConcepto.getStringCellValue(); + + // Precio por concepto - celda 1 + Cell celdaCantidad = filaTrabajo.getCell(2); + double cantidadUnidad = celdaCantidad.getNumericCellValue(); + + // Número de unidades - celda 3 + Cell celdaNumeroElementos = filaTrabajo.getCell(3); + double numeroUnidades = celdaNumeroElementos.getNumericCellValue(); + + System.out.println("Concepto: " + concepto); + System.out.println("Número unidades: " + numeroUnidades); + System.out.println("Cantidad por unidad: " + cantidadUnidad); + + filaInicio++; + filaTrabajo = hojaIngresos.getRow(filaInicio); + System.out.println(); + } + } + + private void tratarGastosExcel(Sheet hojaGastos) throws Exception { + + int filaInicio = 3; // En la fila 3 comienzan los datos. + + Row filaTrabajo = hojaGastos.getRow(filaInicio); // En qué fila empezar ya dependerá también de si tenemos, por + // ejemplo, el título de cada columna en la primera fila + while (filaTrabajo != null) { + // Patrocinador - celda 1 + Cell celdaPatrocinador = filaTrabajo.getCell(1); + String patrocinador = celdaPatrocinador.getStringCellValue(); + + // Importe - celda 2 + Cell celdaCantidad = filaTrabajo.getCell(2); + double cantidad = celdaCantidad.getNumericCellValue(); + + // Observación - celda 3 + Cell celdaObservacion = filaTrabajo.getCell(3); +// String observacion = celdaObservacion.getStringCellValue(); + + // Fecha - celda 4 + Cell celdaFecha= filaTrabajo.getCell(4); + String fecha = celdaFecha.getStringCellValue(); + + System.out.println("Patrocinador: " + patrocinador); + System.out.println("Cantidad: " + cantidad); + System.out.println("Observación: " + celdaObservacion); + System.out.println("Fecha: " + fecha); + + filaInicio++; + filaTrabajo = hojaGastos.getRow(filaInicio); + System.out.println(); + } + } + +}