PureBasic

Forums PureBasic
Nous sommes le Dim 16/Déc/2018 18:25

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 3 messages ] 
Auteur Message
 Sujet du message: Structure pour un header au chargement de fichier ASCII
MessagePosté: Dim 16/Nov/2014 16:32 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 17/Déc/2007 12:44
Messages: 1623
Bonjour,

Je trouve dommage que pour le chargement d'un header de fichier et surtout pour le rendre compatible en ASCII et Unicode, on soir obliger de faire tout a la main.

Avec un fichier ASCII simple et en mode non Unicode, on peu faire :
Code:
Structure lwo_header
  form.s{4}
  flen.l
  lwo2.s{4}
EndStructure

Protected header.lwo_header

; un simple (on a bien fait l'ouverture du ficher et tout forcment, la je fait au plus simple) :
ReadData(ifile, header, SizeOf(lwo_header))
; pour envoyer les données dans la structure.


Par contre si on compile en Unicode la rien de fonctionne (normal) et il faut faire en partant des même infos que dans l'exemple plus haut :
Code:
header\form = ReadString(ifile, #PB_Ascii, 4)
header\flen = ReadLong(ifile)
header\lwo2 = ReadString(ifile, #PB_Ascii, 4)


Alors pourquoi n'y a t'il pas une solution "simple" comme par exemple :
Code:
Structure lwo_header
  form.p-ascii{4}
  flen.l
  lwo2.p-ascii{4}
EndStructure


Car la c'est toujours chiant de tout faire surtout quand le header est plutôt grand (genre le chargement des ISO, que j'ai mis de coté a cause de cela) :

Cordialement,
GallyHC

_________________
Image

Image

Image Official site of PureBasic
Image Official site of SpiderBasic

Configuration : Tower: Windows 7 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.62 (x86 et x64)


Dernière édition par GallyHC le Lun 17/Nov/2014 12:22, édité 1 fois.

Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Structure pour UN header au chargement de fichier ASCII
MessagePosté: Dim 16/Nov/2014 17:15 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 08/Déc/2013 23:19
Messages: 598
Localisation: Hérault
Tu charges normalement ton fichier (mais avec cette structure)

Code:
Structure lwo_header
  form.a[4]
  flen.l
  lwo2.a[4]
EndStructure


et quand tu as besoin de faire des opérations sur un champ, tu fais par exemple:

Code:
If PeekS(@*header\form[0],4,#PB_Ascii)="TRUC"
....
EndIf

_________________
Mon site dédié à ma passion pour la programmation :
http://majikeyric.free.fr


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Structure pour un header au chargement de fichier ASCII
MessagePosté: Lun 17/Nov/2014 12:23 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 17/Déc/2007 12:44
Messages: 1623
Bonjour,

majikeyric > merci pour le code (mais, c'est toujours une "bidouille").

GallyHC

_________________
Image

Image

Image Official site of PureBasic
Image Official site of SpiderBasic

Configuration : Tower: Windows 7 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.62 (x86 et x64)


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 3 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye