Coder avec Unicode/L' accès aux fichiers
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
- ↑ http://www.perlmonks.org/?node_id=536223
- ↑ docs.oracle.com/cd/B19306_01/server.102/b14225/ch7progrunicode.htm