From 0e4c9b808ec5e77ca0bd107ebcc778268467ef3e Mon Sep 17 00:00:00 2001 From: La Programmatrice Verde Date: Tue, 18 Nov 2025 22:42:36 +0100 Subject: [PATCH] trovaScontrini --- src/fatturascontrini/FatturaScontrini.java | 40 ++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/src/fatturascontrini/FatturaScontrini.java b/src/fatturascontrini/FatturaScontrini.java index 474400c..3d14b46 100644 --- a/src/fatturascontrini/FatturaScontrini.java +++ b/src/fatturascontrini/FatturaScontrini.java @@ -10,6 +10,7 @@ import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; +import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; @@ -363,7 +364,30 @@ public class FatturaScontrini { } static void trovaScontriniPerData() { - + boolean error; + String formatoDataInserimento = "dd/MM/yyyy"; + String formatoDataScontrini = "yyyy_MM_dd"; + SimpleDateFormat sdf = new SimpleDateFormat(formatoDataInserimento); + sdf.setLenient(false); + Date dataRicerca = null; + ArrayList listaScontrini; + + do { + error = false; + System.out.print("Inserire la data per cui fatturare nel formato " + + formatoDataInserimento.replace("d", "g").replace("y", "a") + ": "); + try { + dataRicerca = sdf.parse(sc.nextLine()); + } catch (ParseException _) { + System.out.println("Errore: data non valida."); + pausa(); + error = true; + } + } while (error); + + sdf = new SimpleDateFormat(formatoDataScontrini); + + listaScontrini = trovaScontriniPerData(trovaScontrini(), sdf.format(dataRicerca)); } static ArrayList trovaScontrini() { @@ -374,7 +398,7 @@ public class FatturaScontrini { for (int i = 0; i < listaFile.length; i++) { if (listaFile[i].isFile() && listaFile[i].getName().split("_")[0].equals("scontrino") && - listaFile[i].getName().split(".")[1].equals("txt")) { + listaFile[i].getName().split(".")[1].equals("txt")) { ritorno.add(listaFile[i]); } } @@ -382,4 +406,16 @@ public class FatturaScontrini { return ritorno; } + + static ArrayList trovaScontriniPerData(ArrayList scontrini, String data) { + ArrayList ritorno = new ArrayList<>(); + + for (File scontrino : scontrini) { + if(scontrino.getName().contains(data)){ + ritorno.add(scontrino); + } + } + + return ritorno; + } }