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 :

Système de codage


Sujet :

Collection et Stream Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 4
    Par défaut Système de codage
    Bonjour à tous,

    Je suis tout nouveau ici et j'espère être dans la bonne rubrique.
    Je suis en train de travailler sur les différents types de codage des documents tel que les ISO-XXX, unicode, ...
    Après de multiple recherches, je n'ai toujours pas trouvé la réponse.
    Peut-on identifier automatiquement le codage d'un document quelconque lorsqu'on l'ouvre ?

    Merci d'avance et à bientôt

  2. #2
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Dans l'absolu non, ce n'est pas possible selon moi, mais il y a des heuristiques qui permettent d'estimer, et en général cela fonctionne correctement. Ultraedit se base là dessus pour t'afficher les infos de ton document.
    Mais quelles sont ces heuristiques et quels sont les algos, là je ne sais pas du tout

  3. #3
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    Regarde le source de java.nio.charset.CharsetDecoder.detectedCharset() bien souvent cette méthode fonctionne.

  4. #4
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 4
    Par défaut Exemple
    Bonsoir,

    Merci pour ces réponse. Le problème est que j'ai beau y mettre toute la volonté du monde, je n'arrive toujours pas à retourner le codage d'un fichier que je rentre rn paramètre. Auriez un petit exemple concret pour arriver à un tel résultat.

    Merci d'avance...

  5. #5
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    je n'arrive toujours pas à retourner le codage d'un fichier que je rentre rn paramètre
    Tu peux être plus explicite ? ton PC a pris feu quand tu as lancé java ?

  6. #6
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 4
    Par défaut Mon pc n'a pas pris feu
    N'appelez pas les pompiers, mon pc n'a pas pris feu.
    Voilà l'idée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public Charset findCharset(File f) throws Exception{
     
            Charset ch = null;
     
     
     
            System.out.println(ch);
            return ch;
        }
    Je pensai que trouver le charset d'un fichier serait aussi simple que de mettre mon fichier en paramètre de DetectedCharset() mais non et là je suis un peu paumer. Faudrait-il que je mette mon fichier dans un buffer de byte?
    Pourriez-vous compléter ce bout de code pour trouver le charset d'un fichier que j'ai en paramètre car là je patauge grave!

  7. #7
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 4
    Par défaut
    Il faudrait que je reconnaisse des codages assez fréquemment rencontré tel que UTF-8, UTF-16 et UTF32(little et big endian), ISO-8859-1 et -2, ASCII, ANSI, Unicaode, Unicode big Endian et les encodages de windows, le CP1251 et 1252 et après avoir passé quelques heures sur ce problème, je ne pense pas que la tâche soit aussi facile qu'un detectedCharset(). Pour l'instant je parcours seulement mon fichier et le met dans un buffer de byte comme peu le montrer le code ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public Charset findCharset(File f) throws Exception{
     
            Charset ch = null;
            FileInputStream myFichier = new FileInputStream(f);
            FileChannel channelIn = myFichier.getChannel();
            ByteBuffer buffer = channelIn.map(FileChannel.MapMode.READ_ONLY,0, channelIn.size());
     
            //TODO
     
            channelIn.close();
            myFichier.close();
     
            return ch;
        }
    Je pense qu'il faut gérer différents cas suivant les bits rencontrés mais je suis un peu dépasser. Toutes les nouvelles idées seront les bienvenues!!!

Discussions similaires

  1. [tables systèmes] extraction de la structure d'une base
    Par laffreuxthomas dans le forum Autres SGBD
    Réponses: 6
    Dernier message: 23/03/2006, 13h24
  2. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  3. [Système] Vider le Presse Papier
    Par babe dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/09/2002, 17h46
  4. codage objet
    Par charly dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 22/08/2002, 16h49
  5. IA avec le système de note
    Par scorpiwolf dans le forum C
    Réponses: 4
    Dernier message: 06/05/2002, 12h13

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