Hello!

Inspiré(e) de prendre part à la discussion ? Ou de poser une question ou demander de l’aide ?

Alors bienvenues dans les grands sujets des forums de La Bulle : m’inscrire.

Cette partie du forum n’est pas compatible avec les bloqueurs publicitaires

Félicitations à vous, de préférer les accès payants plutôt que la gratuité par la publicité, c’est honnorable et cohérent de votre part. Malheureusement, l’accès payant par micropaiement (qui serait d’environ 1 cent pour 20 pages consultées) n’est pour l’instant pas encore mis en place, et l’accès gratuit sans publicité, est réservé aux membres actif(ve)s du forum. En attendant, si vous souhaitez poursuivre votre visite chez nous, vous pouvez ajouter le site à votre liste blanche, ou encore mieux, désactiver le bloqueur partout. Pour ajouter le site à votre liste blanche, pour Firefox (similaire pour les autres navigateurs), rendez‑vous en bas à gauche de la fenêtre de votre navigateur, et cliquez sur le menu comme dans l’exemple de l’image ci‑dessous, puis rechargez la page, en appuyant sur F5.

Ecrire un fichier contenant des caractères accentués et le symbole €
Auteur Message
Beau Parleur
Beau Parleur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 320
Jeu 5 Nov 2015 08:06
Message Ecrire un fichier contenant des caractères accentués et le symbole €
Bonjour,
J'ouvre un nouveau sujet pour que le contenu corresponde au sujet.

J'essaie désespérément d'écrire avec Ada un fichier lisible par ailleurs, contenant des caractère accentués et le symbole de l'euro '€'.

Voici mon code qui écrit un caractère dans un fichier nommé "tmp2.txt".

Source ada : 

with Ada.Strings.UTF_Encoding.Wide_Strings;
with Ada.Wide_Text_Io;
use Ada.Wide_Text_Io;
procedure char_pos is

char : Wide_Character;
File : File_Type;
begin

Get_Immediate(Char);

Put(": " & Char);

Create(File, Out_File, "tmp2.txt");

Ada.Wide_Text_Io.Put(File, Ada.Strings.UTF_Encoding.Wide_Strings.Decode(Ada.Strings.UTF_Encoding.BOM_16));


Put(File, (Char & ""));

Close(File);

end Char_Pos;


voici les entrées et sortis sur ma console Gnu/Linux dans un shell (bash) :
Citation : 
gnatmake -gnatW8 char_pos.adb
gcc-4.9 -c -gnatW8 char_pos.adb
gnatbind -x char_pos.ali
gnatlink char_pos.ali

./char_pos
: é

cat tmp2.txt



Je dirais ici, que j'ai tout essayé, sauf la bonne pratique. Mais quelle est- elle ?

Merci pour votre investissement.
Profil
Beau Parleur
Beau Parleur
Avatar de l’utilisateur
  • Genre : Télétubbie
  • Messages : 320
Jeu 5 Nov 2015 11:38
Message Re: Ecrire un fichier contenant des caractères accentués et le symbole €
Re- Bonjour,

J'ai posé la question à mon professeur de programmation.
Et j'ai trouvé dans sa réponse, dans un document sur les accents avec Ada la réponse à la question.

Dans le paquetage Wide_Text_Io, que je connais trop peu, les procédure Create et Open on un paramètre Form qui permet de spécifier la méthode d'encodage.

J'ai donc créer un fichier avec pour paramètre formel de Form => "WCEM=8".

Et ça marche.

Merci pour votre investissement et votre patience.
Profil
cron