1.Le problème
Avec l’encodage WLATIN1, des caractères comme supérieur ou égal à ne sont pas importés. Ils sont transformés en caractère non imprimable 1A (valeur hexadécimale) pour indiquer que les caractères ont été subtitués.
Un avertissement apparaît dans le journal :
WARNING: Some character data was lost during transcoding in column:
Avec l’encodage UTF-8, il n’y a plus ce problème.
2. Quel est l’encodage actuel ?
2.1 Les préférences de SAS® Studio ne sont pas pertinentes dans ce cas.
Dans les préférences de SAS Studio, le codage du texte par défaut n’est pas une information sur laquelle se fier lorsqu’on s’intéresse à l’encodage du système SAS®.
2.2 Vérifier l’encodage du système SAS®
proc options option=encoding;
run;
Une fois le logiciel ouvert, il n’est plus possible de modifier la valeur pour cette option.
2.3 Vérifier l’encodage du dataset
Après avoir créé le dataset, il est possible de vérifier le système d’encodage appliqué aux données.
Dans cet exemple, le dataset sheet1
est créé à partir de la feuille de calcul du même nom disponible dans le fichier Book1.xlsx
importées avec le moteur xlsx
.
libname demo xlsx "&xxtraining./data/Book1.xlsx";
proc copy in=demo out=work ;
select SHEET1;
run;
libname demo clear;
proc print data=sheet1;
run;
ods select Attributes;
proc contents data=sheet1;
run;
4.Changer l’encodage pour utf-8
Les explications pour changer l’encodage sous Windows et Unix sont disponibles à cette adresse :
https://support.sas.com/kb/51/586.html
Voici ce que j’ai fait sous Windows.
- Trouver le fichier sasv9.cfg dans le répertoire : C:\Program Files\SASHome\SASFoundation\9.4
- Créer une copie du fichier
- Renommer le fichier en sasv9_old.cfg afin d’avoir une copie à disposition pour revenir à la configuration initiale en cas de problème.
- Déplacer la copie du fichier dans un endroit ayant un accès en écriture pour pouvoir ensuite l’éditer.
- Changer le chemin d’accès indiqué dans le fichier pour : C:\Program Files\SASHome\SASFoundation\9.4\nls\u8\sasv9.cfg
- Remettre le fichier sasv9.cfg à son emplacement d’origine
- Rouvrir le logiciel pour prendre en compte les changements