Coder avec Unicode/L' accès aux fichiers

Cette page est considérée comme une ébauche à compléter . Si vous possédez quelques connaissances sur le sujet, vous pouvez les partager en éditant dès à présent cette page (en cliquant sur le lien « modifier »).

Ressources suggérées : Aucune (vous pouvez indiquer les ressources que vous suggérez qui pourraient aider d'autres personnes à compléter cette page dans le paramètre « ressources » du modèle? engendrant ce cadre)

Les noms de fichiersModifier

En CModifier

Le langage C n'offre pas de facilité spécifique pour accéder aux fichiers avec Unicode. Il faut donc s'appuyer sur des bibliothèques qui ne seront pas les mêmes dans Visual Studio et dans un environnement libre.

Sous Visual Studio, il est possible d'écrire :

L"this is a literal string"

En JavaModifier

En Java, les classes dérivant de Reader permettent de lire des caractères.

try(InputStreamReader in = new InputStreamReader(new FileInputStream(filepath), "UTF-8"))
{
    //... lecture en UTF-8
}

En PerlModifier

Pour obtenir la liste des noms de fichier d'un répertoire, sous Windows 7 et en UTF-8, le code suivant peut être utilisé[1] :

 open fList, '-|:encoding(UTF-16LE)', 'cmd /U /C dir /W'; open fOut, '>', 'out.txt';
 foreach (<fList>) 
 {
    utf8::encode($_);
    print fOut $_; 
 }

En PythonModifier

en python 2, il vous faudra utiliser le module codecs et ouvrir le fichier que vous voulez manipuler ( écriture, lecture, etc...) avec l'encodage utf8.

import codecs

thefile = codecs.open('lefichier', encoding='utf-8')

vous pourrez alors écrire une chaine ou lire dans ce fichier par les méthodes read ou write

unicodeString = thefile.readline()

ou

thefile.write(u'ligne unicode')

En JavascriptModifier

En .NetModifier

En PL/SQLModifier

Plusieurs fonctions existent dans le package UTL_FILE[2]:

  • FOPEN_NCHAR
  • GET_LINE_NCHAR
  • PUT_NCHAR
  • PUT_LINE_NCHAR
  • PUTF_NCHAR

RéférencesModifier

  1. http://www.perlmonks.org/?node_id=536223
  2. docs.oracle.com/cd/B19306_01/server.102/b14225/ch7progrunicode.htm