Coder avec Unicode/L' accès aux fichiers
Les noms de fichiers
[modifier | modifier le wikicode]En C
[modifier | modifier le wikicode]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 Java
[modifier | modifier le wikicode]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 Perl
[modifier | modifier le wikicode]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 Python
[modifier | modifier le wikicode]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 Javascript
[modifier | modifier le wikicode]En .Net
[modifier | modifier le wikicode]En PL/SQL
[modifier | modifier le wikicode]Plusieurs fonctions existent dans le package UTL_FILE[2]:
- FOPEN_NCHAR
- GET_LINE_NCHAR
- PUT_NCHAR
- PUT_LINE_NCHAR
- PUTF_NCHAR
Références
[modifier | modifier le wikicode]- ↑ http://www.perlmonks.org/?node_id=536223
- ↑ docs.oracle.com/cd/B19306_01/server.102/b14225/ch7progrunicode.htm