2009-08-10 5 views
3

en jouant avec un fichier de propriétés j'ai figuré qu'il semble y avoir une limitation de 40char à enregistrer dans une seule propriété.Limitation de longueur de chaîne de fichier de propriété (JAVA)

Je fais ce qui suit:

File configFile = new File("config.properties"); 

Properties props = new Properties(); 
props.put("cc_server", "sort_of_a_long_string_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); 
FileOutputStream fos = new FileOutputStream(configFile); 
PrintWriter pw = new PrintWriter(fos); 
props.list(pw); 
pw.flush(); 
pw.close();   
System.out.println("done."); 

Le résultat est que seul le premier 37char être sauvé, prolongé par "...". J'ai débogué que les propriétés ont les bonnes valeurs, l'écriture semble être le problème.

Existe-t-il un moyen d'étendre/désactiver cette limitation?

tia

K 

Répondre

8

Il n'y a pas de limite

Puisque vous mentionnez "..." j'ai cette question: vous affichez la valeur dans un JLabel? Le "..." est un moyen typique d'un JLabel rendant une chaîne trop longue.

Il y a aussi un moyen plus facile d'enregistrer les propriétés

File propertiesfile=new File("fileName.props"); 
propstosave.store(new FileOutputStream(propertiesfile), "groupnames"); 
+1

Salut, Je n'affiche pas la valeur. La vérification des fichiers de configuration réels me montre que la valeur enregistrée est déjà tronquée et étendue par les points mentionnés. L'utilisation de votre 'storeApproach' a permis de résoudre le problème, un paquet! Ko – KB22

12

vous utilisez une fonction de débogage pour enregistrer le fichier. La méthode list() est pas destinée à des propriétés d'enregistrement dans un fichier, vous devez utiliser la méthode store() à la place:

File configFile = new File("config.properties"); 
Properties props = new Properties(); 
props.put("cc_server", "sort_of_a_long_string_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); 
props.store(new FileOutputStream(configFile),"aaa"); 
+0

La méthode de liste est utile uniquement pour le débogage. – adatapost

Questions connexes