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

    [JAVA] Caricare valore da file di configurazione "strano"

    Salve,

    ho un file di configurazione in formato txt la cui coppia chiave/valore è così formata:

    Codice PHP:
    {chiave1:valore1}
    {
    chiave2:valore2}
    {
    chiave3:valore3}
    ecc
    Attraverso il seguente metodo leggo i parametri

    Codice PHP:
    public static String getProperty(String param) {
            
    FileInputStream in null;
            
    String value null;
            try {
                
    // Apre il file di configurazione.
                
    File cfg = new File("cfg.txt");
                
    in = new FileInputStream(cfg);
                
    // Carica le proprietà dal file.
                
    Properties properties = new Properties();
                
    properties.load(in);
                
    value properties.getProperty(param);
                
    in.close();
            } catch (
    Exception ex) {
                if (
    in != null)
                    try {
                        
    in.close();
                    } catch (
    Exception ex2) {
                    }
            }
            return 
    value;
        } 
    Facendo la chiamata al metodo mi restituisce null

    Il problema è che se si fosse trattato di un file di configurazione "normale" del tipo:

    Codice PHP:
    chiave1:valore1
    chiave2
    :valore2
    chiave3
    :valore3
    ecc 
    mi avrebbe restituito il valore esatto
    Facendo una chiamata del tipo

    Codice PHP:
    PropertiesFile.getProperty("{chiave1"
    quanto meno mi restituisce valore1}, ma non è proprio quello che vorrei.
    C'è un modo per impostare le chiavi/valori correttamente prevedendo le parentesi graffe?
    Purtroppo il file di configurazione non lo posso modificare.

    Grazie dell'attenzione,
    Matteo.
    Gutta cavat lapidem
    [La goccia scava la pietra]
    ***
    (Ovidio)

  2. #2
    non so aiutarti dato che non conosco alla perfezione la classe Properties, ma perchè è un problema se modifichi così??

    codice:
    String pippo = properties.getProperty("{"+param); 
    value = pippo.substring(0,pippo.length()-1);
    alla fine funziona, no?

  3. #3
    Ti ringrazio, in effetti alla fine ho adottato proprio questa soluzione (siamo sincroni ) anche se speravo che ci fosse un metodo più pulito

    Se qualcuno ne sa qualcosa batta un colpo...
    Gutta cavat lapidem
    [La goccia scava la pietra]
    ***
    (Ovidio)

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.