From: mailmur <ma...@ya...> - 2003-08-19 19:08:28
|
[warning, long post] Ive understood same that Interbase(Firebird) has used UTF-8 as an internal UNICODE_FSS charset. Dont know why they named it so weird. About ISO8859-1 charset: This is what we use here in up north if unicode charset is not available. It has scandinavian letters as an extended ascii codes. ALT+0228 gives me "ä" character in Notepad. BUT it's not UTF-8 equalent where "ä" letter is represented with two bytes. Here is Win2k Notepad UTF8 file from hexeditor: EB BB BF C3 A4 where EBBBBF is a unicode BOM-marker. So, C3A4 represents "ä" character in UTF-8 format. I can run tomorrow few tests with greek and cyrillic letters. They definitely should not work with ISO8859-1 encoding. Greek: ΨΩΪ Cyrillic: ЗИЙ Scandinavian: åäö I will download Jaybird jdbc driver and test it against the same testdb as well. What happens if database is UNICODE_FSS and connectionStr does not provide a charset parameter. Is it _server_ that does all the conversion and most likely will fall to default ISO8859-1 if nothing is provided? Native Interbase/Firebird drivers, jaybird and Delphi drivers use "lc_ctype" parameter name for charset. I think NETProviders "charset" is more general name for such parameter. That probably does not mean anything here as it's just a logical name for client driver reading value from connection string. --- Carlos Guzman Alvarez <car...@te...> > Hello: > mailmur has reported a problem with the UNICODE_FSS > character set in the .NET provider, i have this character set mapped to > UTF-8 in the .NET Provider ( is this really correct ?? i think it's ok > :) ), the problem gives with a field ( varchar field ) with a value of > ( database was created using UNICODE_FSS as character set and i > have made the test using Firebird 1.5 RC4 ) : > > Känkkäränkkä > > but in the .net provider when i read the field value > i'm receiving 12 bytes of data: > > [0] 75 > [1] 228 > [2] 110 > [3] 107 > [4] 107 > [5] 228 > [6] 114 > [7] 228 > [8] 110 > [9] 107 > [10] 107 > [11] 228 > > When i transfor this buffer into a string using the > UTF-8 encoding of .NET the result is: > > Knkkrnkk > > Instead if i map the UNICODE_FSS character set to > ISO8859_1 all runs fine, any idea about what can be the problem ?? __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com |