[Users-fr] Traitement des caractères accentués

classic Classic list List threaded Threaded
2 messages Options
VUILLAUME Philippe (SNCF MOBILITES / AGENCE D'ESSAI FERROVIAIRE / POLE
 AEF E) VUILLAUME Philippe (SNCF MOBILITES / AGENCE D'ESSAI FERROVIAIRE / POLE AEF E)
Reply | Threaded
Open this post in threaded view
|

[Users-fr] Traitement des caractères accentués

Bonjour,

 

J’ai un problème de traitement de caractères accentués.

Je dois séparer de l’adresse d’un fichier le chemin menant à son répertoire et le nom du fichier. Pour cela j’ai écrit le code suivant :

ouvrir = uigetfile(["*.txt"],"","Choix du fichier des mesures");

texte = asciimat(ouvrir);

chemin = char(texte(1:max(strindex(ouvrir,'\'))));

fichier = char(texte(max(strindex(ouvrir,'\'))+1:size((texte),2)));

qui ne pose pas de problème tant qu’il n’y a pas de caractères accentués dans l’adresse.

Par exemple avec

ouvrir = 'D:\force\sensorPOS1.txt';

j’obtiens bien

chemin  =

 D:\force\

et

fichier  =

 sensorPOS1.txt

 

Par contre avec

ouvrir = 'D:\accéléro\sensorPOS1.txt';

il y a un décalage et j’obtiens

chemin  =

 D:\accélér

et

fichier  =

 o\sensorFBG1.txt

cela vient du fait que les caractères « é » sont codés à l’aide de 2 caractères :

asciimat('é')

ans  =

   195.   169.

 

Une idée pour contourner simplement ce problème ?

 

 

Bien cordialement,

 

 

Philippe VUILLAUME 
Référent Technique / Senior Technical Adviser
Expert scientifique et technique du réseau SNCF - SYNAPSES

cid:695cf711-a912-4220-b0da-a81ba56048c8   

 

SNCF – DIRECTION DU MATERIEL

INGÉNIERIE DU MATÉRIEL - AGENCE D’ESSAI FERROVIAIRE (AEF)
21, Avenue Salvador Allende - 94407 VITRY SUR SEINE Cedex - CRT PRG
TÉL. : +33 (0)1 47 18 84 81 (41 94 81) - MOBILE : +33 (0)6 13 53 54 11 
[hidden email]

 

sncf

POUR NOUS CONTACTER ::

Vous êtes un client SNCF, exprimez votre besoin en cliquant : AEF à votre service

Vous êtes une société tierce, envoyez votre besoin à [hidden email]

 

 

-------
Ce message et toutes les pièces jointes sont établis à l'intention exclusive de ses destinataires et sont confidentiels. L'intégrité de ce message n'étant pas assurée sur Internet, la SNCF ne peut être tenue responsable des altérations qui pourraient se produire sur son contenu. Toute publication, utilisation, reproduction, ou diffusion, même partielle, non autorisée préalablement par la SNCF, est strictement interdite. Si vous n'êtes pas le destinataire de ce message, merci d'en avertir immédiatement l'expéditeur et de le détruire.
-------
This message and any attachments are intended solely for the addressees and are confidential. SNCF may not be held responsible for their contents whose accuracy and completeness cannot be guaranteed over the Internet. Unauthorized use, disclosure, distribution, copying, or any part thereof is strictly prohibited. If you are not the intended recipient of this message, please notify the sender immediately and delete it.


_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
mottelet mottelet
Reply | Threaded
Open this post in threaded view
|

Re: Traitement des caractères accentués

Normalement il y a fileparts pour faire ça

https://help.scilab.org/docs/6.0.2/en_US/fileparts.html

S.

Le 27/03/2019 à 16:38, VUILLAUME Philippe (SNCF MOBILITES / AGENCE D'ESSAI FERROVIAIRE / POLE AEF E) a écrit :

Bonjour,

 

J’ai un problème de traitement de caractères accentués.

Je dois séparer de l’adresse d’un fichier le chemin menant à son répertoire et le nom du fichier. Pour cela j’ai écrit le code suivant :

ouvrir = uigetfile(["*.txt"],"","Choix du fichier des mesures");

texte = asciimat(ouvrir);

chemin = char(texte(1:max(strindex(ouvrir,'\'))));

fichier = char(texte(max(strindex(ouvrir,'\'))+1:size((texte),2)));

qui ne pose pas de problème tant qu’il n’y a pas de caractères accentués dans l’adresse.

Par exemple avec

ouvrir = 'D:\force\sensorPOS1.txt';

j’obtiens bien

chemin  =

 D:\force\

et

fichier  =

 sensorPOS1.txt

 

Par contre avec

ouvrir = 'D:\accéléro\sensorPOS1.txt';

il y a un décalage et j’obtiens

chemin  =

 D:\accélér

et

fichier  =

 o\sensorFBG1.txt

cela vient du fait que les caractères « é » sont codés à l’aide de 2 caractères :

asciimat('é')

ans  =

   195.   169.

 

Une idée pour contourner simplement ce problème ?

 

 

Bien cordialement,

 

 

Philippe VUILLAUME 
Référent Technique / Senior Technical Adviser
Expert scientifique et technique du réseau SNCF - SYNAPSES

cid:695cf711-a912-4220-b0da-a81ba56048c8   

 

SNCF – DIRECTION DU MATERIEL

INGÉNIERIE DU MATÉRIEL - AGENCE D’ESSAI FERROVIAIRE (AEF)
21, Avenue Salvador Allende - 94407 VITRY SUR SEINE Cedex - CRT PRG
TÉL. : +33 (0)1 47 18 84 81 (41 94 81) - MOBILE : +33 (0)6 13 53 54 11 
[hidden email]

 

sncf

POUR NOUS CONTACTER ::

Vous êtes un client SNCF, exprimez votre besoin en cliquant : AEF à votre service

Vous êtes une société tierce, envoyez votre besoin à [hidden email]

 

 

-------
Ce message et toutes les pièces jointes sont établis à l'intention exclusive de ses destinataires et sont confidentiels. L'intégrité de ce message n'étant pas assurée sur Internet, la SNCF ne peut être tenue responsable des altérations qui pourraient se produire sur son contenu. Toute publication, utilisation, reproduction, ou diffusion, même partielle, non autorisée préalablement par la SNCF, est strictement interdite. Si vous n'êtes pas le destinataire de ce message, merci d'en avertir immédiatement l'expéditeur et de le détruire.
-------
This message and any attachments are intended solely for the addressees and are confidential. SNCF may not be held responsible for their contents whose accuracy and completeness cannot be guaranteed over the Internet. Unauthorized use, disclosure, distribution, copying, or any part thereof is strictly prohibited. If you are not the intended recipient of this message, please notify the sender immediately and delete it.


_______________________________________________
users-fr mailing list
[hidden email]
https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users-fr

_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr