2010-07-09 8 views
2

Selon la question comment créer un fichier qui inclut également la marque de commande d'octets?Comment créer un fichier UTF8 en C#

Problème lors de l'affichage de certains caractères car le visualiseur csv ne peut pas afficher les caractères correctement sans la nomenclature.

Appréciez toute aide.

EDIT pour inclure du code:

+1

Post le code que vous avez actuellement - comment écrivez-vous le fichier? – Oded

Répondre

4

Cela devrait être fait automatiquement pour tout le code intégré en utilisant un Encoding, comme StreamWriter - assurez-vous que l'encodeur vous passez est configuré pour inclure un bom (le Encoding.UTF8 par défaut inclut le bom).

Si vous manipulez votre propre logique Encoding ->Stream, vous devez appeler .GetPreamble() et écrire ces octets au début du flux.

La valeur par défaut Encoding.UTF8 inclut le préambule; mais vous pouvez le faire explicitement dans le ctor: new UTF8Encoding(true)

+0

. GetPreamble() a fait l'affaire :). – GMan

Questions connexes