Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605

    Aiuto su un nuovo programmimo

    Ciao a tutti,
    mi sono messo sempre a studiare java ma mai ho avuto l'ocasione di realizzare qualcosa.... con una vera meta diciamo.. a parte gli esercizi e tutorial.

    Ora è l'occasione giusta vistio che un amico mi ha chiesto il favore di aiutarlo in un programmino..
    Ma volevo un'aiutino da voi su come procedere.

    Allora cerco di essere breve:

    Ho un file di testo iniziale di questa forma:

    227;3009125
    235;2209320
    230;2209450
    233;2209206
    229;2209200
    222;2209120

    questo vuol dire che

    l'utente 227 il giorno 30/09 ha avuto 125 punti
    l'utente 235 il giorno 22/09 ha avuto 320 punti

    e fin quì con il filechosser mi vado a prendere il mio file e mi faccio un parsing.
    Alemno fin quì c'è lho chiaro(... almeno spero...)

    Il problema però arriva ora

    dove il tizio che userà il programmino potrà inserire un file excel con due colonne

    227 Pippo Baudo
    235 Paperino Paperino
    230 Topo Giggio

    per poi avere alla fine un risultato sempre su excel del tipo


    Pippo Baudo totale punti 1235
    Paperino Paperino totale punti 850
    etc...

    Come posso realizzare secondo voi qualcosa del genere... tenendo conto che non vorrei utilizzare un db visto che non mi serve immagazzinare questi dati (dal momento che ho già il file di testo a disposizione.)
    Pensavo che posso senzì'altro fare il parsing dei due file... (excel me lo trasformo in cvs cosi mi è tlimitato da ma poi che faccio... come potrei procedere...


    grazie per il suggerimento...
    e buona giornata

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Ho corretto il titolo inserendo un titolo più significativo e meno generico, come da Regolamento... anche se la prossima volta dovresti farlo tu.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    mi scuso...
    in effetti... era molto generico
    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Penso dunque che il tuo cruccio maggiore sia "come scrivo/leggo su/da file Excel"?

    http://www.andykhan.com/jexcelapi/

    se tieni le cose semplici ti bastano ed avanzano.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    Ciao e grazie mille Andrea
    il tuo link è utile come il pane...

    Ma in effetti volevo chiedere qualcosa di più generale... come procedere.. secondo voi.

    cioè cosa dovrei fare:
    del tipo far scegliere all'utente i due file e fare il parsing dei due, e poi buttare tutto su un'altro excel..?
    oppure non so...
    con l'ausilio di un db con una tabella temporanea mi associo i valori di uno e dell'altro per poi estrarmi sempre l'excel combinato?

    o ancora qualcosa che secondo voi è più semplice come procedimento.. analisi..

    insomma un consiglio... su come voi fareste sto calcolo considerando che devo fare il parsing dei due file.?
    grazie ancora
    Buona serata

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Per come la vedo io, è un classico problema che risolveresti con poche semplici query se utilizzassi un DB e come molto codice utilizzando Excel e file di testo. Chiaramente tu dici "ne vale la pena installare un DB per questo?" boh? Dipende da quanto grande diventeranno i file di testo ed excel, se ci sarà la necessità di aggiungerne altri (o altri fogli) per features aggiuntive etc etc.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605

    ciao andrea...

    alla fine penso di fare...

    due pulsanti sfoglia che mi cercano uno il file di testo, e l'altro il file excel

    e un pulsante elabora che mi farà il parsing dei due file è mi crea unaltro file excel stavolta asssociandomi l'ID al nome.

    Ora sto iniziando ma la vedo molto dura...
    con l'aiuto di netbeans

    mi sono creato un frame ed ho messo due pulsanti sfoglia.
    come questa:




    ora al click di sfoglia vorrei far aprire loggetto filechooser
    come faccio...?

    chiedo l'impossibile..? vedo che con netbeans mi aiuta molto anche se sono inesperto...
    ma... c'è tanto da studiare..


    il codice è questo:


    Codice PHP:
    package javaapplication1;

    import java.io.File;
    import javax.swing.JFileChooser;


    public class 
    NewJFrame extends javax.swing.JFrame {
      

        public 
    NewJFrame() {
            
    initComponents();
        }
        

        
    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">                          
        
    private void initComponents() {
            
    jButton1 = new javax.swing.JButton();
            
    jLabel1 = new javax.swing.JLabel();
            
    jLabel2 = new javax.swing.JLabel();
            
    jButton2 = new javax.swing.JButton();
            
    jTextField1 = new javax.swing.JTextField();
            
    jTextField2 = new javax.swing.JTextField();
            
    jButton3 = new javax.swing.JButton();

            
    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
            
    jButton1.setText("Sfoglia1");
            
    jButton1.addActionListener(new java.awt.event.ActionListener() {
                public 
    void actionPerformed(java.awt.event.ActionEvent evt) {
                    
    jButton1ActionPerformed(evt);
                }
            });

            
    jLabel1.setText("Seleziona il file di testo ");

            
    jLabel2.setText("Seleziona il file excel");

            
    jButton2.setText("Sfoglia2");

            
    jTextField1.setText("jTextField1");

            
    jTextField2.setText("jTextField2");

            
    jButton3.setText("Elabora e crea file excel");

            
    org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
            
    getContentPane().setLayout(layout);
            
    layout.setHorizontalGroup(
                
    layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .
    add(layout.createSequentialGroup()
                    .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                        .
    add(layout.createSequentialGroup()
                            .
    add(343434)
                            .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                                .
    add(jLabel1)
                                .
    add(jLabel2))
                            .
    add(262626)
                            .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                                .
    add(jTextField1org.jdesktop.layout.GroupLayout.PREFERRED_SIZE388org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                                .
    add(jTextField2org.jdesktop.layout.GroupLayout.PREFERRED_SIZE391org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                            .
    add(151515)
                            .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                                .
    add(jButton2)
                                .
    add(jButton1)))
                        .
    add(layout.createSequentialGroup()
                            .
    add(242242242)
                            .
    add(jButton3)))
                    .
    addContainerGap(70Short.MAX_VALUE))
            );
            
    layout.setVerticalGroup(
                
    layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .
    add(layout.createSequentialGroup()
                    .
    add(999999)
                    .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                        .
    add(jLabel1)
                        .
    add(jTextField1org.jdesktop.layout.GroupLayout.PREFERRED_SIZEorg.jdesktop.layout.GroupLayout.DEFAULT_SIZEorg.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .
    add(jButton1))
                    .
    add(767676)
                    .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                        .
    add(layout.createSequentialGroup()
                            .
    add(jButton2)
                            .
    addContainerGap())
                        .
    add(layout.createSequentialGroup()
                            .
    add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                                .
    add(jTextField2org.jdesktop.layout.GroupLayout.PREFERRED_SIZEorg.jdesktop.layout.GroupLayout.DEFAULT_SIZEorg.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                                .
    add(jLabel2))
                            .
    addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED117Short.MAX_VALUE)
                            .
    add(jButton3)
                            .
    add(646464))))
            );
            
    pack();
        }
    // </editor-fold>                        

        
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         
    String command evt.getActionCommand();
        
            if(
    command == "Sfoglia1") {
               
            }
        
          if(
    command == "Sfoglia2") {
               
            }
        

    // TODO add your handling code here:
        
    }                                        
        
        
    /**
         * @param args the command line arguments
         */
        
    public static void main(String args[]) {
            
    java.awt.EventQueue.invokeLater(new Runnable() {
                public 
    void run() {
                    new 
    NewJFrame().setVisible(true);
                }
            });
        }

        
        
        
    // Variables declaration - do not modify                     
        
    private javax.swing.JButton jButton1;
        private 
    javax.swing.JButton jButton2;
        private 
    javax.swing.JButton jButton3;
        private 
    javax.swing.JLabel jLabel1;
        private 
    javax.swing.JLabel jLabel2;
        private 
    javax.swing.JTextField jTextField1;
        private 
    javax.swing.JTextField jTextField2;
        
    // End of variables declaration                   

     
        


    CON questo dovrei controllare la pressione sul tasto sfoglia1 vero..?


    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    String command = evt.getActionCommand();

    if(command == "Sfoglia1") {

    }

    }


    Ma come faccio a dire fammi visualizzare l'oggetto filechooser
    grazie per l'aiuto e buona serata

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    http://java.sun.com/docs/books/tutor...lechooser.html

    codice:
    public void actionPerformed(ActionEvent e) {
        //Handle open button action.
        if (e.getSource() == openButton) {
            int returnVal = fc.showOpenDialog(FileChooserDemo.this);
    
            if (returnVal == JFileChooser.APPROVE_OPTION) {
                File file = fc.getSelectedFile();
                //This is where a real application would open the file.
                log.append("Opening: " + file.getName() + "." + newline);
            } else {
                log.append("Open command cancelled by user." + newline);
            }
       } ...
    }
    oppure cerca nel forum
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.