Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Accesso a file remoto

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305

    Accesso a file remoto

    Provo ad accedere ad un file da remoto ma non so perchè non riesco . Vi posto il pezzo di codice:
    codice:
    String percorso = "\\Users\\Linux\\Documents\\NetBeansProjects\\jCallRememberServer\\database.properties";
            String indirizzoRisorsa = "file://" + addressIp + percorso;
            URL url = new URL(indirizzoRisorsa);
            URLConnection connection = url.openConnection();
    
    
            InputStream inputStreamRisorsa = connection.getInputStream();
            Properties propRisorsaRemota = new Properties();
            propRisorsaRemota.load(inputStreamRisorsa);
            System.out.println(propRisorsaRemota.getProperty("orarioMattinoInizio"));
            prop.setProperty("orarioMattinoInizio", propRisorsaRemota.getProperty("orarioMattinoInizio"));
            prop.setProperty("orarioMattinoFine", propRisorsaRemota.getProperty("orarioMattinoFine"));
            prop.setProperty("orarioPomeriggioInizio", propRisorsaRemota.getProperty("orarioPomeriggioInizio"));
            prop.setProperty("orarioPomeriggioFine", propRisorsaRemota.getProperty("orarioPomeriggioFine"));
            FileOutputStream fos = new FileOutputStream("settings.properties");
            prop.store(fos, null);
            fos.close();

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    codice:
    String percorso = "\\Users\\Linux\\Documents\\NetBeansProjects\\jCallRememberServer\\database.properties";
            String indirizzoRisorsa = "file://" + addressIp + percorso;
            URL url = new URL(indirizzoRisorsa);
    Un URL così con dei \ non ha senso e non funziona.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    1) Dovresti essere un po' più coerente nei percorsi ai file (specialmente quando si ha a che fare con percorsi di rete). Sostituisci tutti i backslash alla "Windows" con gli slash alla "Linux"... ci pensa da sola la JVM a usare il separatore corretto.

    2) Non capisco perchè crei un URL per accedere ad un file in remoto se questo lo indirizzi usando il protocollo "file://"... tanto vale mettere un doppio slash prima dell'indirizzi IP e accederci come un qualunque altro file

    3) Non sappiamo cosa voglia dire "non so perchè non ci riesco". Chi deve riuscirci è la tua applicazione e se non ci riesce lei ti dice anche il perchè: lanciando un'eccezione... quale?


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Ho visto su alcune discussioni nel web file://..... con i separatori alla windows. Qual' è il problema nell'usare file? Se non metto file:// prima dell' ip mi da l'errore no protocol!!


    L'eccezione che viene sollevata non si capisce qual' è perchè viene sollevata una nullpointerexception (dovuta al fatto che il codice non è completato). ma se faccio il debug l'errore si verifica sulla prima setproperty

    L'eccezione viene sollevata nel file futureTask.java
    Ultima modifica di linux_r; 01-07-2014 a 18:48

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Ho provato a togliere il protocollo file . Ma nulla il problema si verifica durante il set property , inoltre il value del getproperty da remoto è null.
    codice:
    Properties prop = new Properties();
    
    
            FileInputStream fis = new FileInputStream("settings.properties");
    
    
            prop.load(fis);
            fis.close();
            String addressIp = prop.getProperty("serverAddress");
    
    
            this.address = InetAddress.getByName(addressIp);
            this.socket = new Socket(address.getHostAddress(), this.serverPort);
            String percorso = "//Users//Linux//Documents//NetBeansProjects//jCallRememberServer//database.properties";
            String indirizzoRisorsa = "//" + addressIp + percorso;
       
    
    
            FileInputStream inputStreamRisorsa = new FileInputStream(new File(indirizzoRisorsa));
            Properties propRisorsaRemota = new Properties();
            propRisorsaRemota.load(inputStreamRisorsa);
            String value=propRisorsaRemota.getProperty("orarioMattinoInizio");
            System.out.println(value);
            prop.setProperty("orarioMattinoInizio",value );
            prop.setProperty("orarioMattinoFine", propRisorsaRemota.getProperty("orarioMattinoFine"));
            prop.setProperty("orarioPomeriggioInizio", propRisorsaRemota.getProperty("orarioPomeriggioInizio"));
            prop.setProperty("orarioPomeriggioFine", propRisorsaRemota.getProperty("orarioPomeriggioFine"));
            FileOutputStream fos = new FileOutputStream("settings.properties");
            prop.store(fos, null);
            fos.close();

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    era un problema del nome della proprietà era sbagliato !! mamma mia quanto tempo perso per ste cose! Comunque non sapevo di poter leggere il file anche senza un oggetto URL , in ogni caso ho imparato qualcosa grazie a voi !

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    mamma mia quanto tempo perso per ste cose!

    Ecco... solo per informazione.

    Hai detto che l'eccezione era una NullPointerException e che "non si capiva".
    Se tu l'avessi postata fin dall'inizio, con il suo bel stackTrace, ci saremmo accorti subito che la lettura del file avveniva correttamente (se così non fosse stato ci sarebbe stata un'eccezione diversa, come una FileNotFoundException) e che "semplicemente" non trovava una property. Un rapidissimo controllo ti avrebbe messo in luce che il nome della property era sbagliato... e non avresti perso tutto questo tempo.

    Come sempre... il tempo si perde perchè le informazioni postate non sono complete o non si ritengono importanti.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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 © 2026 vBulletin Solutions, Inc. All rights reserved.