IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

i18n fichier properties


Sujet :

Collection et Stream Java

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut i18n fichier properties
    J'ai un fichier properties contenant des caractères accentués et des caractères spéciaux(en français) que je load puis j'y ajoute d'autres clé et valeurs mais quand je sauvegarde mon fichier; les caractères spéciaux sont transformé en caractères unicode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    String in="D:/Mon_fichier.properties";
    String out="C:" ;
    PropertiesService propertiesService = new PropertiesService ();
    Properties   propertiesIn=propertiesService.loadProperties(in);			
    Properties propertiesOut= new Properties ();
    propertiesService.updateProperties(propertiesIn,propertiesOut);
    propertiesService.saveProperties(propertiesOutput, out);

  2. #2
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut
    Peut etre que personne n'a rien compris a mon message
    Ce que je cherche à faire c'est de charger des fichiers properties en plusieurs langues europennes et meme japonaise et j'y ajoute des données ensuite je les sauvegarde de nouveau.
    Mais une fois que je les sauvegarde c'est pas pareil comme les fichiers originaux.

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut
    C'est vrai qu'en java l'encodage des fichiers properties en UTF8 n'est pas possible?

  4. #4
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 413
    Points : 1 993
    Points
    1 993
    Par défaut
    Bonjour,

    En plus l'exemple du code est tronqué. Pourquoi ne pas afficher la déclaration des variables? Avec en plus les packages....
    Bien le bonjour chez vous
    Jowo

  5. #5
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut
    Citation Envoyé par friedamichelle Voir le message
    J'ai un fichier properties contenant des caractères accentués et des caractères spéciaux(en français) que je load puis j'y ajoute d'autres clé et valeurs mais quand je sauvegarde mon fichier; les caractères spéciaux sont transformé en caractères unicode
    c'est le main:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    String in="D:/Mon_fichier.properties";
    String out="C:" ;
     PropertiesService propertiesService = new PropertiesService ();
    Properties   propertiesIn=propertiesService.loadProperties(in);			
    Properties propertiesOut= new Properties ();
    propertiesService.updateProperties(propertiesIn,propertiesOut);
    propertiesService.saveProperties(propertiesOutput, out);
    la classe propertiesService:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
     
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.io.PrintWriter;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.Properties;
    import java.util.Set;
     
     
     
    public class PropertiesService {
    	Properties properties = new Properties();
     
    	public PropertiesService() {
    		super();
     
    }
     
    	public Properties loadProperties(String propertiesFileLocation) throws FileNotFoundException, IOException {
    		Properties props = new Properties();
    		props.load(new FileInputStream(propertiesFileLocation));
    		return props;
    	}
     
    	 public Properties updateProperties(Properties propsInput,Properties props) {
    			Iterator it = props.keySet().iterator();
    			while (it.hasNext()) {
    				String propertyName =(String)it.next();
    				String propertyValue =props.getProperty(propertyName);
    				propsInput.put(propertyName, propertyValue);
     
    			}
    			return propsInput;
    		}
     
    	 public  void save(Properties props, String location) throws IOException  
    	    {  
     
    	      PrintWriter printer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(location)));  
    	      for (Iterator it = props.entrySet().iterator(); it.hasNext();)  
    	      {  
    	        Map.Entry entry = (Map.Entry) it.next();  
    	        printer.println(entry.getKey() + "=" + entry.getValue());  ;  
    	      }  
    	     printer.close();  
    	    }  
    }

  6. #6
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 413
    Points : 1 993
    Points
    1 993
    Par défaut
    Bonjour,

    Pourquoi ne pas utiliser la méthode store de la Classe Properties dans ta méthode save?
    Bien le bonjour chez vous
    Jowo

  7. #7
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut
    Citation Envoyé par jowo Voir le message
    Bonjour,

    Pourquoi ne pas utiliser la méthode store de la Classe Properties dans ta méthode save?
    tout simplement parce que la méthode store mes fichiers properties sont encodés en unicode j'ai des données comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    1=pr\u00C3\u00A9-pay\u00C3\u00A9es
    avec la nouvelle méthode j'ai des données comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    1=pré-payées

  8. #8
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 413
    Points : 1 993
    Points
    1 993
    Par défaut
    Je dois avouer que je comprend pas.

    On veut bien t'aider mais il faut être plus clair.

    avec la nouvelle méthode j'ai des données comme ca
    Le terme 'nouvelle méthode' fait référence à quoi?

    Il faut être plus précis car on ne connait ton contexte de travail. Par exemple, nous écrire le contenu de ton fichier (une ligne suffira )initial et le contenu des ce même ficher après sauvegarde.
    Bien le bonjour chez vous
    Jowo

  9. #9
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2007
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2007
    Messages : 259
    Points : 128
    Points
    128
    Par défaut
    Citation Envoyé par jowo Voir le message
    Je dois avouer que je comprend pas.

    On veut bien t'aider mais il faut être plus clair.


    Le terme 'nouvelle méthode' fait référence à quoi?

    Il faut être plus précis car on ne connait ton contexte de travail. Par exemple, nous écrire le contenu de ton fichier (une ligne suffira )initial et le contenu des ce même ficher après sauvegarde.
    quand je parle de 'nouvelle méthode' je fais référence à ma méthode 'save'
    Quand j'utilise cette cette méthodes au lieu de store pour créer mon fichier properties de sorties.

    voici un mon fichier properties d'origine c'est en finlandais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    city=Syötä ajokortin myöntämispaikka tähän
    title=Valitse ammattisi
    birthplace=Syötä syntymäpaikkasi tähän
    addresscountry=Syötä asuinmaasi tähän
    birthcountry=Syötä syntymämaasi tähän
    quand j'utilise la méthode store de l'api properties
    j'obtiens ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    title=Valitse ammattisi
    birthplace=Sy\u00C3\u00B6t\u00C3\u00A4 syntym\u00C3\u00A4paikkasi t\u00C3\u00A4h\u00C3\u00A4n
    addresscountry=Sy\u00C3\u00B6t\u00C3\u00A4 asuinmaasi t\u00C3\u00A4h\u00C3\u00A4n
    birthcountry=Sy\u00C3\u00B6t\u00C3\u00A4 syntym\u00C3\u00A4maasi t\u00C3\u00A4h\u00C3\u00A4n
    city=Sy\u00C3\u00B6t\u00C3\u00A4 ajokortin my\u00C3\u00B6nt\u00C3\u00A4mispaikka t\u00C3\u00A4h\u00C3\u00A4n
    quand j'utilise la méthode save de ma classe PropertiesService
    j'obtiens ça en sortie:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    birthplace=Syötä syntymäpaikkasi tähän
    title=Valitse ammattisi
    addresscountry=Syötä asuinmaasi tähän
    birthcountry=Syötä syntymämaasi tähän
    city=Syötä asuinpaikkasi tähän
    S'il y a des choses qui ne sont pas claires je me ferai un plaisir de les éclaircir

Discussions similaires

  1. [Struts] Lire un fichier properties situé ds WEB-INF
    Par tscoops dans le forum Struts 1
    Réponses: 3
    Dernier message: 02/02/2005, 14h33
  2. [init] Recupérer un fichier properties et l'utiliser
    Par brousaille dans le forum Servlets/JSP
    Réponses: 14
    Dernier message: 13/01/2005, 14h50
  3. [JAR] Comment écrire dans un fichier properties dans un jar
    Par Alec6 dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 05/10/2004, 15h16
  4. [STRUTS] fichier properties indépendant
    Par meufeu dans le forum Struts 1
    Réponses: 5
    Dernier message: 28/07/2004, 16h10
  5. [struts] utiliser plusieurs fichiers properties
    Par jaimepasteevy dans le forum Struts 1
    Réponses: 7
    Dernier message: 03/10/2003, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo