[java] générer un fichier .properties

Fermé
kifouillou Messages postés 170 Date d'inscription mardi 27 septembre 2005 Statut Membre Dernière intervention 28 janvier 2011 - 24 janv. 2007 à 15:32
 Scorps - 26 nov. 2013 à 16:15
Bonjour,

je voudrais créer un fichier .properties.
Connaissez-vous des cours ou tutoriels ou exemple dessus? Car je n'en ai encore jamais réalisé.
Merci d'avance.
A voir également:

3 réponses

Utilisateur anonyme
24 janv. 2007 à 16:21
Salut Kifouillou!

Tu trouveras ci-dessous une petite démo qui te montre comment créer un fichier Properties, comment y insérer des valeurs, comment stocker ce fichier sur disque, comment charger un fichier Properties depuis le disque et comment afficher le contenu.


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;

/*
 * Created on Jan 24, 2007
 *
 */

public class PropertiesDemo {

	public PropertiesDemo() {
		super();
	}

	
	/**
	 * Cette méthode stocke le fichier Properties à l'emplacement spécifié
	 * 
	 * @param props Le fichier à stocker
	 * @param fileLocation L'emplacement où le fichier doit être stocké
	 * @param comments Commentaires à insérer en tête du fichier
	 * @throws FileNotFoundException
	 * @throws IOException si une erreur est survenue lors de l'écriture du fichier
	 */
	public void saveProperties(Properties props, String fileLocation, String comments) throws FileNotFoundException,
			IOException {
		OutputStream out = new FileOutputStream(fileLocation);
		props.store(out, comments);
		out.flush();
		out.close();
	}

	
	/**
	 * Cette méthode lit un fichier Properties à l'emplacement spécifié
	 * 
	 * @param propertiesFileLocation L'emplacemnt du fichier
	 * @return Le fichier Properties chargé
	 * @throws FileNotFoundException si le fichier n'a pas été trouvé
	 * @throws IOException si une erreur est survenue durant la lecture
	 */
	public Properties loadProperties(String propertiesFileLocation) throws FileNotFoundException, IOException {
		Properties props = new Properties();
		props.load(new FileInputStream(propertiesFileLocation));
		return props;
	}

	
	/**
	 * 
	 * Cette méthode affiche cahque paire [clé,valuer] d'un fichier Properties
	 * 
	 * @param props Le fichier à afficher
	 */
	public void displayProperties(Properties props) {
		Iterator it = props.keySet().iterator();
		while (it.hasNext()) {
			String propertyName = (String) it.next();
			String propertyValue = props.getProperty(propertyName);
			System.out.println(propertyName + "=" + propertyValue);
		}
	}

	/**
	 * Cette méthode permet de démarrer la démo.
	 * 
	 * On y crée un fichier Properties que l'on remplitavec des paires [clé,valeur]
	 * puis on le stocke sur le disque. Ensuite on le re depuis le disaue et, enfin,
	 * son contenu est affiché.
	 * 
	 * @param args non utilsé
	 */
	public static void main(String[] args) {
		PropertiesDemo demo = new PropertiesDemo();

		//Emplacement où sera stocké le fichier
		String propertiesFileLocation = "d:/myProperties.properties";
		
		//On instancie un nouvel objet Properties
		Properties myProps = new Properties();
		//On y insère des paires [clé,valeur]
		myProps.setProperty("user.name","HackTrack");
		myProps.setProperty("os.name","Linux");
		myProps.setProperty("java.ide","Eclipse3.2");
		myProps.setProperty("java.applicationserver.name","JBoss AS");
		myProps.setProperty("java.applicationserver.version","4.0.5");
		myProps.setProperty("user.function","Developer");
		myProps.setProperty("user.age","You are too curious!");
		
		try {
			//On stocke le fichier sur le disque
			demo.saveProperties(myProps, propertiesFileLocation, "This is a demo on Properties by HackTrack");
			//On crée un nouvel objet Properties en lisant le fichier sur le disque
			Properties loadedProps = demo.loadProperties(propertiesFileLocation);
			//On affiche le contenu du fichier
			demo.displayProperties(loadedProps);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}


;-)
HackTrack
22
kifouillou Messages postés 170 Date d'inscription mardi 27 septembre 2005 Statut Membre Dernière intervention 28 janvier 2011 9
24 janv. 2007 à 17:20
Yop,

j'ai donc fais un copier coller de la démodans un document text.
J'ai créé un fichier dont le nom est décrit dans la démo.
J'ai fait un petit F5 mais il n' y a rien qui se passe. Mon fichier properties est toujours vide. Ais-je fais une manip à l'envers?
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
24 janv. 2007 à 17:24
lol,

Le code donné correspond à une classe Java qui te permet de sauvergarder un objet Property dans un fichier de type properties.
Il te faut donc insèrer cette classe dans ton projet java, et l'utiliser pour pouvoir sauvegarder tes infos.
0
Merci pour cette démo ! C'est claire et bien commenté ! (Je crois que c'est la première fois que je teste un truc qui marche du premier coup... lol)
0