Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [JAVA] passare un file come argomento

    ho un programma che prende in input un file di testo attraverso una finestra grafica. lo devo modificare in modo che sia io a passargli il file da riga di comando nella shell di dos.
    Come devo fare?
    basta che metto come argomento del costruttore una variabile di tipo file?
    in questo modo riesce a leggere il file in base al path che gli passo?

    vi prego fatemi sapere.grazie.
    Luca >> http://www.pollosky.it

  2. #2
    Utente di HTML.it L'avatar di plafo
    Registrato dal
    Sep 2000
    Messaggi
    84
    ciao!
    prova a postare il codice della classe che fa questa lettura.
    comunque potresti passare il file come argomento quando lanci la classe attraverso il metodo main oppure anche successivamente, dipende dalle tue esigenze




    ciao ciao

    Carlo
    non può piovere per sempre

  3. #3
    la classe è di questo tipo:

    public class LeggiFile{

    private RandomAccessFile input;
    private File fileName;
    .
    .
    public LeggiFile(){
    //fileName=new File("foutput_bb.txt");
    openFile(true);
    }


    private void openFile(boolean firstTime){
    if(firstTime){
    JFileChooser fileChooser=new JFileChooser("file");

    fileChooser.setFileSelectionMode(JFileChooser.FILE S_ONLY);
    int result=fileChooser.showOpenDialog(null);

    //Click su cancel
    if(result==JFileChooser.CANCEL_OPTION)return;

    fileName=fileChooser.getSelectedFile();
    }

    if(fileName==null || fileName.getName().equals(""))
    JOptionPane.showMessageDialog(null,"Nome file non valido","Nome file non valido",JOptionPane.ERROR_MESSAGE);
    else{
    //Apertura file
    try{
    if(input!=null)input.close();
    input=new RandomAccessFile(fileName,"r");
    }
    catch(IOException e){
    JOptionPane.showMessageDialog(null,"Il file non esiste","Nome file non valido",JOptionPane.ERROR_MESSAGE);
    }
    }
    }

    public static void main(String args[]){
    new LeggiFile();
    }
    }

    la funzione openfile praticamente visualizza una finestra per la scelta del file. io vorrei eliminare questa finestra e passare il file come argomanto direttamente da riga di comando.
    quello che mi chiedo è: se io passo scrivo ad esempio
    java LeggiFile c:\file\file.txt
    il programma riesce a deternimare il riferimento a file.txt.
    come faccio a fare in modo che avvenga una cosa del genere?
    Luca >> http://www.pollosky.it

  4. #4
    Utente di HTML.it L'avatar di plafo
    Registrato dal
    Sep 2000
    Messaggi
    84
    ciao!
    si puoi fare come dici tu anche se in questo modo devi rivedere completamente il codice del metodo openFile visto che non avrai più a che fare con una finestra




    ciao ciao

    Carlo
    non può piovere per sempre

  5. #5
    ci sto provando ma ho qualche problema.
    come faccio a modificare il main in modo che mi prenda il
    file come argomento quando richiamo la classe?

    posso scrivere una cosa del genere?
    public static void main(File ff){
    LeggiFile =new Leggifile(ff);
    System.exit(0);
    }

    cioè posso omettere lo String args[]. se si? va bene come faccio io?
    in questo modo mi da errore.
    Come si può fare altrimenti?
    Luca >> http://www.pollosky.it

  6. #6
    Utente di HTML.it L'avatar di plafo
    Registrato dal
    Sep 2000
    Messaggi
    84
    ciao!
    l'intestazione del metodo main devi lasciarla cosi com'è....
    i parametri che tu passi quando chiami una classe (ad esempio java LeggiFile c:\file\file.txt) vengono gestiti tramite un array di stringhe (il famoso args[])
    all'interno del main puoi recuperarlo facendo args[0] nel tuo caso....
    spero di essere stato chiaro....




    ciao ciao

    Carlo
    non può piovere per sempre

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.