Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249

    [Java] Ricerca su intervalli temporali

    Salve a tutti, piccola domanda:

    Volevo fare una cosa del tipo che io inserisco degli intervalli di tempo e in base a quelli vado a ricercare in un file dove ho salvato delle cose.
    Come posso fare una cosa simile?

  2. #2
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249
    scusate, specifico

    io ho due jTextArea dove voglio inserire delle date .In base all'intervallo fra queste due date io voglio che il programma mi cerchi un appuntamento nella mia agenda la cui data è compresa fra questi due intervalli.
    Come faccio a prendere i dati da queste JTextArea per potermele confrontare con i dati già presenti nell'agenda?

    Spero di essere stata chiara stavolta
    tnx

  3. #3
    Cioè inserisci una data per ogni JTextArea???
    o più date per ogni JTextArea??
    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

  4. #4
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249
    Originariamente inviato da Zero-2
    Cioè inserisci una data per ogni JTextArea???
    o più date per ogni JTextArea??
    allora, io ho due campi di testo dove metto due date,
    cio ho:

    dal 12/7/2003 al 15/7/2003
    e io voglio cercarmi nell'agenda tutti gli appuntamenti che sono compresi fra quelle date.
    Ora, per prelevare la data dall'appuntamento non ho problemi. Il problema si pone per prelevarlo da questi campi.

  5. #5
    Una volta che hai la data degli appuntamenti la confronti con i due valori che ottieni dai JTextField(JTextArea ) con qualche controllo e inserisci quelli compresi.
    Spero di non aver capito male pure stavolta
    :gren: :gren: :gren:

    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

  6. #6
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249
    Originariamente inviato da Zero-2
    Una volta che hai la data degli appuntamenti la confronti con i due valori che ottieni dai JTextField(JTextArea ) con qualche controllo e inserisci quelli compresi.
    Spero di non aver capito male pure stavolta
    :gren: :gren: :gren:

    No no ,capito benisismo ed è quello che tento di fare, ma poi non so come fare a visualizzare solo quelli perchè io gli appuntamenti li apro direttamente nell'interfaccia grafica.
    Pensavo a salvare in un file temporaneo i dati ottenuti e poi aprirlo, ma non mi riesce :master:

  7. #7
    Fammi un esempio di un record che hai nel file

  8. #8
    Quando clicchi su ricerca , apri una nuova finestra temporanea e inserisci li i risultati e se si clicca su un risultato , visualizzi il suo contenuto.O no?
    Ma non hai completato la funziona salva e salva con nome??
    Ho provato ma non va , quando carico dice che il formato non è valido.

    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

  9. #9
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249
    es:

    io creo un nuovo Record così:

    ..new Record(int numero,Date data, Date ora, String luogo, String oggetto, String note)

    Zero-2, le funzioni son completate tutte, i file aggiornati ve li metto stasera se riesco. E' tutto sistemato tranne la ricerca per intervalli temporali e la visualizzazione per settimana, mese e anno
    Ti da così perchè non avevo ancora sistemato per la serializzazione col serialUID ma ora l'ho messo e apre anche i file creati precedentemente:

    Per la ricerca in intervalli ho usato il seguente codice:
    (Save_Data è la classe che mi permette di salvare gli appuntamenti su file, gli passo l'array di record , la cartella e il file dove salvare)
    Quando cerco ho già un'agenda aperta quindi ho già un list_rec che contiene appuntamenti.
    Ho due campi di testo, text_dal e text_al dove inserisco le date e premendo sul bottone ok dovrebbe cercare gli appuntamenti che hanno quella data.)

    if(e.getSource() == ok)

    {
    Record[] temp = new Record [list_rec.length];
    for (int i=0; i< list_Rec.length_; i++)
    for (int j=0; j<list_rec.length; j++)
    {
    String dal = text_dal.getText();
    String al = text_al.getText();
    try {
    SimpleDateFormat dal2 = new SimpleDateFormat("dd/mm/yyyy");
    Date dal3 = dal2.parse(dal);

    SimpleDateFormat al2 = new SimpleDateFormat("dd/mm/yyyy");
    Date al3 = al2.parse(al);

    SimpleDateFormat dat = new SimpleDateFormat("dd/mm/yyyy");
    Date dat2 = dat.parse(list_rec[i].getData());

    if ((dat2.after(dal3) == true) && (dat2.before(al3) == true))
    temp[j]= list_rec[i];
    Save_Data.save (temp,directory,"temp");
    [...]
    e poi il codice per l'apertura
    } catch(ParseException pp)
    {}
    }
    }
    ma non mi da segni di vita!

  10. #10
    Utente di HTML.it L'avatar di --LO--
    Registrato dal
    Dec 1999
    residenza
    San Michele All'Adige
    Messaggi
    249
    Ok, basta, mi arrendo!!!
    Aiutatemi vi prego! Io come già sapete devo poter effettuare una ricerca in un array di Record (dove un record ha diversi campi) in base a dei valori inseriti in due campi
    Ho provato a prelevarmi le stringhe da questi due campi e trasformarmele in GregorianCalendar per utilizzare i metodi after() e before(). Ho allora convertito la data dei record allo stesso modo dei campi in Gregorian calendar.
    Ora il problema: io voglio salvarmi su file gli appuntamenti che corrispondono a quell'intervallo...MA NON CI RIESCO! Dove è che sbaglio? Il codice è questo!

    ---------------------------------------------------------------------
    // Se l'utente clicca su ok nel campo di ricerca per intervalli di tempo.
    if (e.getSource() == ok)
    {
    String dal = text_dal.getText();
    String al = text_al.getText();
    try {
    SimpleDateFormat formatdal = new SimpleDateFormat("dd/MM/yyyy");
    Date datadal = formatdal.parse(dal);
    GregorianCalendar caldal = new GregorianCalendar();
    caldal.setTime(datadal);

    SimpleDateFormat formatal = new SimpleDateFormat("dd/MM/yyyy");
    Date dataal = formatal.parse(al);
    GregorianCalendar calal = new GregorianCalendar();
    calal.setTime(dataal);

    for (int j=0; j <list_rec.length;j++)
    {
    campo.setText("");
    campo.append("Entro nel ciclo di for");


    Record[] temp = new Record[list_rec.length];

    campo.append("Creo l'array temP");

    String date = list_rec[j].getData();

    campo.append("nella stringa Date metto il valore della data dell'elemento jesimo di list_Rec");


    SimpleDateFormat date2 = new SimpleDateFormat("dd/MM/yyyy");
    Date date3 = formatdal.parse(date);
    GregorianCalendar datecal = new GregorianCalendar();
    datecal.setTime(date3);

    if ( (datecal.after(caldal)) && (datecal.before(calal)))

    temp[0]=list_rec[j];

    campo.append("Chiedo di salvare in html");

    file_dialog_close = new FileDialog(this, "Export", FileDialog.SAVE);
    file_dialog_close.setVisible(true);
    filee = file_dialog_close.getFile();
    directory = file_dialog_close.getDirectory();
    Export_HTML.Export_HTML(temp, directory, filee);

    }
    }catch(ParseException pp) {

    }
    }
    ---------------------------------------------------------------

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.