aldweb

Fermer I. aldweb

Fermer II. Gratuitiels PC

Fermer III. Gratuitiels Palm

Fermer IV. Partagiciels Palm

Fermer V. iziBasic Palm

Fermer VI. Connaissance Palm

Fermer VII. Ordinateur Poche

Fermer VIII. miniPortail

Spécial !



Version mobile
de l'aldweb Site

m.aldweb.com


Ni Français, ni Anglais ?

Essayez donc l'un de ces drapeaux :
[de] [es] [it] [pt]
Recherche




Météo / Spam / www

Météo Lyon


aldweb contre le SPAM


Newsletter
Pour avoir des nouvelles de ce site, inscrivez-vous à notre Newsletter.
S'abonner
Se désabonner
298 Abonnés
Sites web de la famille

Webmaster - Infos
News Amis
Visites

   visiteurs

   visiteurs en ligne

Sondage
Comment trouve-tu le nouvel habillage de l'aldweb Site ?
 
Superbe !
Joli
Moyen
Moche...
Résultats
Poster une réponse

Je vous remercie de prendre le temps d'écrire ce message.

Votre nom (ou pseudo) :

Votre e-mail :

Masquer aux visiteurs votre adresse e-mail :      
Note : l'adresse e-mail utilisée est protégée contre le SPAM.

S'abonner à ce fil de discussion :      

Vous répondez à aldweb qui a écrit :


Hello JoeV,

It's neither MegaString, nor You
Your issue has to do with the DOC format and also the way MakeDoc builds the DOC file.
But you are right to use the MegaString for this kind of purpose.

The DOC format is a set of up to 4KB chunks of data, that are not CHR$(0) ended, when iziBasic works natively with chunks of data terminated with a CHR$(0) character.

Furthermore, in the DOC format, when a chunk maximum size is reached, the next character is to be found in the next chunk. Then, one of your strings will almost always be split between the end of a chunk and the beginning of the following chunk.

Add to this that MakeDoc does not write full 4KB chunks like other DOC tools (except the last chunk which is usually smaller than 4KB), but the size of each chunk is usually among 3KB to 4KB with MakeDoc.

Note: you may use Bird (or RsrcEdit) to see all of the above directly on your device, it is easier than to use an hex editor in the PC.


Knowing this you will understand what happens:
The INPUT$$ reads a 4KB chunk of data in the Palm memory. Then, it checks for a CHR$(0) and adjusts the following characters to CHR$(0) accordingly. And LEN$$ will then return the correct size. If no CHR$(0) character is found, the MegaString is believed to be 4KB big and... this is why the beginning of your MegaString is fed with what you expect to find and the last part of the chunk is filled with unexpected characters, these were the one stored in the Palm memory just after the ones you wanted to retrieve.


At this stage, what I suggest is the following (this is the easy way):
1. use TL-PDB to build your DOC file. This DOC editor will make sure that all but the last chunk of data are 4KB (4096 bytes) big
2. check with Bird what's the size of the last chunk
3. use the MegaString to read the chunks, one after the other (all but the last will be of 4096 bytes big, the last one you know from 2.), be careful with the change of chunk to correctly get the string split in between the 2 chunks

That should make it.


Another way of doing the job would be to build a PDB file, with many small records CHR$(0) terminated instead of a DOC file with LF separators among records. You would have more records but it would be easier to read and parse your file.


If you still have issues, don't hesitate to send me your code and the DOC file (I guarantee 100% confidentiality, all files will be deleted from my PC once the job will be done), I would give you a hand to finish this little coding with a DOC file.

Cheers,


@+
aldweb


Aide :

Syntaxe du code :

  • <color=CodeHexadécimale></color> permet de colorer un texte.
    Remarque : Vous pouvez préciser à la place du code hexadécimal (#??????), le nom de la couleur (red, yellow, orange, green, blue, etc...). Pour plus de détails...
  • <bgcolor=CodeHexadécimale></bgcolor> permet de surligner en couleur un texte.
    Remarque : Vous pouvez préciser à la place du code hexadécimal (#??????), le nom de la couleur (red, yellow, orange, green, blue, etc...). Pour plus de détails...
  • <b></b> permet de mettre en gras un texte.
  • <i></i> permet de mettre en italique un texte.
  • <u></u> permet de souligner un texte.
  • <cite></cite> permet d'insérer une citation.
    Remarque : Vous pouvez préciser le nom de l'auteur de la citation en écrivant <cite=Auteur>
  • <code></code> permet d'insérer du code.
    Remarque : Vous pouvez préciser le langage en écrivant <code=NomduLangage>
  • <left></left> permet d'aligner à gauche.
  • <center></center> permet d'aligner au centre.
  • <right></right> permet d'aligner à droite.
  • <link></link> permet d'insérer un lien.
    Remarque : Vous pouvez préciser l'url du lien en écrivant <link=URL>texte</link>. Si vous ne précisez pas l'url du lien, l'url sera ce qui se trouve entre les deux balises.<link>URL</link>
  • <img=NomduSmiley> permet d'insérer un smiley.
    Remarque : Les noms des smileys de base disponibles sont : cool, wink, biggrin, smile, frown, eek, mad, confused, rolleyes, tongue, cry. Pour plus de détails...

Raccourcis clavier (sous Windows) :

  • Touche SHIFT + flèche (droite ou gauche) permet de sélectionner du texte
  • Touche ALT + 2 permet de sélectionner la barre d'outils
  • Touche ALT + 3 permet de sélectionner la zône d'édition
  • Touche ALT + 4 permet d'afficher l'aide
  • Touche ALT + 5 permet de masquer l'aide
  • Touche TAB permet de passer d'une sélection à la suivante
  • Touche SHIFT + TAB permet de passer d'une sélection à la précédente
  • Touche ALT + flèche (vers le bas ou vers le haut) permet de déplier le menu sélectionné
  • Touche ALT + flèche (vers le bas ou vers le haut) permet de replier un menu déplié
  • Touche flèche (vers le bas ou vers le haut) permet de naviguer dans un menu déplié
  • Touche ALT + s permet d'envoyer le formulaire

   |     |  Gras  Italique  Souligné  Insérer une Citation    Aligner à Gauche  Centrer  Aligner à Droite  Insérer un Lien  Insérer un Smiley (popup)  Prévisualiser (popup)  Afficher l'aide   
smiley tranquille  smiley complice  smiley content  smiley souriant  smiley sidéré  smiley perturbé  smiley en colère  smiley mécontent  smiley étonné  smiley moqueur  smiley malheureux 
Captcha reload
Recopier le code :


 
 
^ Haut ^