Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
encore une question a propos des blobs.
En fait j'ai un champ blob qui contient une chaine.
Cette chaine est en ASCII pour les vieilles valeurs et en utf16 pour les plus récentes (du fait de la migration de PB).
Comment tester simplement sur quelle version on se trouve?
pour la conversion j'utilise string et en paramètre le type EncodingANSI! ou EncodingUTF16LE!
merci
Hors ligne
dans la documentation de powerbuilder, à la section FileOpen PowerScript function, à la fin il parle du BOM (byte order mark) qui permet de signer l'encodage entre UTF16-LE/BE par exemple FF FE pour UTF16-LE.
J’espère que le BOM est bien encodé dans ton blob pour detecter la bonne version.
Hors ligne
j'ai vu ca dans la doc, si j'ai bien compris y'a 4 octets avant la chaine, mais moi j'ai rien, en fait ma chaine est meme précédé par d'autre champs (différentes variables). Donc je ne dois pas avec ce BOM :-(
Hors ligne
Tu arrives a faire un
SELECT dbms_lob.substr(val_blob,20000,1)
de ce qui t'interesse dans le cas de l'UTF16 ?
(normalement il y a des 00 entre chaque chars pour ce qui est des codes latins.)
Hors ligne
merci pour les réponses
du coup j'ai modifié l'insertion dans le blob pour repassé en ANSI
Hors ligne