Sad bash neshto gledam u nekom editoru, zapisano je kao UTF-16 Little Endian... I to ti pravi problem u VB chini mi se... Kada snimim taj tvoj fajl kao UTF-8, VB ga lepo prochita, i sve zapishem u fajl primer.t, i sachuva UTF-8 format... Ali kad je u pitanju UTF-16 LE, dodje do zeza... Sachuva on UTF-16 LE, ali je totalno nechitljiv... Probaj dakle da exportujesh ili konvertujesh taj UTF-16LE u UTF-8, i VB tje ti raditi kako treba, bar bi trebalo...
Onaj znak pitanja u prvom redu je Byte Order Mark, 0xFEFF, odnosno, u nashem sluchaju 0xFFFE jer je u pitanju Little Endian... Chini mi se da VB ne konta UTF-16, samo UTF-8, i tu nastaje zez... Mozhesh ti da napishesh svoju rutinu za chitanje UTF-16 fajlova, binarno uchitavash, pazish na byte order (LE ili BE), i onda muljash... Ali to je previshe posla... Dakle, probaj prvo da taj CSV kovertujesh u UTF-8, tj. exportujesh ga kao takvog, i onda propusti kroz tvoj program...
Mozhda kad bi na pochetak svakog reda stavljao BOM, bi radilo i sa UTF-16 LE, probaj i to...
EDIT: Sad mi je palo na pamet, zashto ti stavlja "?"... Zato shto ne konta pravilno byte order mark... Taj karakter inache ne treba da se vidi uopshte, ochigledno strconv() ne mozhe da barata sa UTF koji nije UTF-8...
EDIT #2: Evo linka za jedan sajt, koji ima neke VB funkcije za UTF-8 i UTF-16, kao i Unicode:
http://www.vovisoft.com/unicode/UniFunctions.htm Mozhda tje ti pomotji, proveri...
Ne pitah, iz chega exportujesh taj CSV? Excel, Access, MySQL, neshto chetvrto?
[Ovu poruku je menjao galahad dana 24.04.2008. u 11:33 GMT+1]
-
SKRati link -
JaZaKraljevo.rs -
"I have never let my schooling interfere with my education." - Mark Twain