Page 1 sur 1

WriteStringFormat ?

Publié : mar. 06/avr./2010 20:16
par nico
Salut,

Code : Tout sélectionner

; Compilation Unicode
if CreateFile(0,"Test.txt")
  WriteStringFormat(0, #PB_UTF8)
    WriteStringN(0,"Purebasic")
CloseFile(0)
Lorsque je crée un fichier en compilation unicode (donc format UTF8) et que je place un BOM en début de fichier avec la comande WriteStringFormat(0, #PB_UTF8), j'ai un problème!.

En effet, lorsque j'ouvre ce fichier avec le Bloc Note, il apparait en début de la première ligne un carré (caractère non affichable)

Si je supprime ce caractère, et que j'enregistre le fichier au format UTF8 et que je le ré-ouvre, le caractère en début de ligne n'apparaît plus.

Donc question, il n'y a pas un problème avec l'écriture du BOM avec Purebasic?

Re: WriteStringFormat ?

Publié : mer. 07/avr./2010 0:47
par G-Rom
as tu essayé de rajouté la constante #PB_UTF8 à la fin de WriteStringN() ?

Code : Tout sélectionner

; Compilation Unicode
If CreateFile(0,"Test.txt")
  WriteStringFormat(0, #PB_UTF8)
    WriteStringN(0,"Purebasic",#PB_UTF8)
    CloseFile(0)
    EndIf

Re: WriteStringFormat ?

Publié : mer. 07/avr./2010 10:14
par Fred
Je viens d'essayer (compilation unicode et ascii) et les 2 fichiers .txt sont identiques et s'affichent correctement dans notepad.

Re: WriteStringFormat ?

Publié : mer. 07/avr./2010 13:08
par nico
Merci pour vos interventions, en effet il n'y a pas de problème avec le Bloc note.

En fait, je n'utilisais pas ReadStringFormat(#File) lors de la lecture du fichier, car je n'avais pas besoin de connaître la nature du BOM, d'où l'apparition du caractère.

Merci!