Ecrire un fichier au format ANSI

Le
Stéphane
Bonjour,

Lorsque je génré un fichier avec streamwriter il est au format UTF8, je peut
choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
générer le fichier selon le codage ANSI, comme faire ?

Merci d'avance

Cordialement

Stéphane
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LE TROLL
Le #20726921
Tiens, encore d'autres, il semblerait que des logiciels existent :

http://www.unix.com/unix-dummies-questions-answers/38111-convert-utf8-format-file-ansi-format.html


Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Stéphane" message de news:
Bonjour,

Lorsque je génré un fichier avec streamwriter il est au format UTF8, je
peut
choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
générer le fichier selon le codage ANSI, comme faire ?

Merci d'avance

Cordialement

Stéphane




LE TROLL
Le #20726911
Tu as aussi Wordäd qui semble faire certaines conversions (enregistrer sous)

--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Stéphane" message de news:
Bonjour,

Lorsque je génré un fichier avec streamwriter il est au format UTF8, je
peut
choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
générer le fichier selon le codage ANSI, comme faire ?

Merci d'avance

Cordialement

Stéphane




LE TROLL
Le #20727341
Bonjour Stéphane,

Un code trouvé :

Ici du code
http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/code-conversion-ansi-sujet_79551_1.htm

Ici peut être avec les fonction de chaînes VB ?
http://social.msdn.microsoft.com/Search/en-US?query=convert%20utf%20to%20ansi&ac=3

Ici des explications ?
http://www.michelcarrare.com/multimedia/codage-car.php

Ici une DLL et du code
http://www.vbfrance.com/codes/DLL-CONVERSION-FORMAT-FICHIER-VERS-AUTRE-UTF8-VERS_40603.aspx

CE QUI DONNE ÇA

a.. Imports System.IO 'Importation de l'espace de noms pour les fichiers
a..
a..
'--------------------------------------------------------------------------------------------
a.. 'Voici les différents encodages acceptés :
a.. 'System.Text.Encoding.ASCII
a.. ' .BigEndianUnicode
a.. ' .Default
a.. ' .Unicode
a.. ' .UTF7
a.. ' .UTF8
a..
a.. 'Ces deux méthodes permettent par défaut de convertir de UTF8 vers ANSI
et de ANSI vers UTF8,
a.. 'mais vous pouvez très bien choisir l'encodage souhaité ! (cf liste
ci-dessus)
a..
'--------------------------------------------------------------------------------------------
a..
a.. Public Class FileConvert
a..
a.. 'Méthode de conversion de UTF8 vers ANSI
a.. Sub UTF8_to_ANSI(ByVal file_source As String, ByVal file_destination As
String)
a.. Dim ls_contenu As String
a..
a.. Try
a.. 'Déclaration du fichier de destination avec l'encodage souhaité, ici
"default" (=ANSI)
a.. Dim fic_dest As New StreamWriter(file_destination, True,
System.Text.Encoding.Default)
a.. 'Déclaration du fichier source avec son encodage, ici UTF8
a.. Dim monStreamReader As New StreamReader(file_source,
System.Text.Encoding.UTF8)
a.. 'Lecture de tout le contenu du fichier source
a.. ls_contenu = monStreamReader.ReadToEnd
a.. 'Ecriture du contenu du fichier source dans le fichier de destination
a.. fic_dest.WriteLine(ls_contenu)
a.. 'Fermeture du fichier
a.. fic_dest.Close()
a..
a.. Catch err As Exception
a.. 'Capture de l'erreur éventuelle
a.. MsgBox("Erreur : " + vbCrLf + err.ToString, MsgBoxStyle.Critical,
"CvrtFileFormat.dll")
a.. End Try
a..
a.. End Sub
a..
a.. 'Méthode de conversion de ANSI vers UTF8
a.. Sub ANSI_to_UTF8(ByVal file_source As String, ByVal file_destination As
String)
a.. Dim ls_contenu As String
a..
a.. Try
a.. 'Déclaration du fichier de destination avec l'encodage souhaité, ici
"UTF8"
a.. Dim fic_dest As New StreamWriter(file_destination, True,
System.Text.Encoding.UTF8)
a.. 'Déclaration du fichier source avec son encodage, ici "Default" (=ANSI")
a.. Dim monStreamReader As New StreamReader(file_source,
System.Text.Encoding.Default)
a.. 'Lecture de tout le contenu du fichier source
a.. ls_contenu = monStreamReader.ReadToEnd
a.. 'Ecriture du contenu du fichier source dans le fichier de destination
a.. fic_dest.WriteLine(ls_contenu)
a.. 'Fermeture du fichier
a.. fic_dest.Close()
a..
a.. Catch err As Exception
a.. 'Capture de l'erreur éventuelle
a.. MsgBox("Erreur : " + vbCrLf + err.ToString, MsgBoxStyle.Critical,
"CvrtFileFormat.dll")
a.. End Try
a.. End Sub
a..
a.. End Class


--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Stéphane" message de news:
Bonjour,

Lorsque je génré un fichier avec streamwriter il est au format UTF8, je
peut
choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
générer le fichier selon le codage ANSI, comme faire ?

Merci d'avance

Cordialement

Stéphane




Fred
Le #20728741
"Stéphane" message de groupe de discussion :
Bonjour,



Bonjour,

Lorsque je génré un fichier avec streamwriter il est au format UTF8, je
peut
choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
générer le fichier selon le codage ANSI, comme faire ?



Je suppose que tu penses au codage par défaut Windows (Windows-1252 en
France).
Cela peut-être aussi un des nombreux autres codages disponibles.

Using sw as New System.IO.StreamWriter(path, System.Text.Encoding.Default)
...
End Using

ou bien

Using sw as New System.IO.StreamWriter(path,
System.Text.Encoding.GetEncoding(1252))
...
End Using

Regarde l'aide de la classe Encoding pour une liste complète des pages de
code et de leurs noms.


--
Fred

Stéphane
Le #20739381
Je remet ta réponse

pour le append je l'avais mis, mais malgrès le "1252" le format de sortie
reste de l'UTF8 ce qui fait que le fichier généré est mal lu ensuite

--------
Bonjour Stéphane,

Tu m'as répondu en direct par mail plutôt que sur le groupe (ce n'est pas
grave mais ta réponse n'apparaîtra pas sur le groupe)
Si mon code ne fonctionne pas, c'est à cause d'une monstrueuse erreur de ma
part : j'ai oublié le second paramètre "append"

Essaie celui-ci :

Using sw As New System.IO.StreamWriter("1252.txt", False,
System.Text.Encoding.GetEncoding(1252))
sw.Write("Caractères accentués et un ? pour mettre en évidence l'encodage
1252")
End Using


-----Message d'origine-----
De : Stéphane AUBOUSSU [mailto:]
Envoyé : jeudi 10 décembre 2009 08:22
À : Fred
Objet : Re: Ecrire un fichier au format ANSI

Merci pour toutes vos réponses je vais y jeter un coup d'oeil

pour l'instant je reeditait avec notepad puis j'enregistrait en changant le
format.

même en mettant le getencoding à 1252 c'est toujours du UTF8 qui est généré
:(





"Fred" news:
"Stéphane" message de groupe de discussion :
> Bonjour,

Bonjour,

> Lorsque je génré un fichier avec streamwriter il est au format UTF8, je
> peut
> choisi l'UTF7, l'unicode ou l'ASCII, mais ce qont j'ai bessoin c'est de
> générer le fichier selon le codage ANSI, comme faire ?

Je suppose que tu penses au codage par défaut Windows (Windows-1252 en
France).
Cela peut-être aussi un des nombreux autres codages disponibles.

Using sw as New System.IO.StreamWriter(path, System.Text.Encoding.Default)
...
End Using

ou bien

Using sw as New System.IO.StreamWriter(path,
System.Text.Encoding.GetEncoding(1252))
...
End Using

Regarde l'aide de la classe Encoding pour une liste complète des pages de
code et de leurs noms.


--
Fred




Fred
Le #20739981
"Stéphane" message de groupe de discussion :
Je remet ta réponse

pour le append je l'avais mis, mais malgrès le "1252" le format de sortie
reste de l'UTF8 ce qui fait que le fichier généré est mal lu ensuite



Alors il y a autre chose, le code que je t'ai envoyé produit bien le
résultat souhaité chez moi (en ouvrant avec bloc-note le fichier 1252.txt,
on voit qu'il est en ANSI si l'on fait "enregistrer sous").

Using sw As New System.IO.StreamWriter("1252.txt", False,
System.Text.Encoding.GetEncoding(1252))
sw.Write("Caractères accentués et un ¤ pour mettre en évidence
l'encodage
1252")
End Using



Essaie de poster un code minimaliste qui reproduit ton problème.


--
Fred

Publicité
Poster une réponse
Anonyme