Hello, Everyone. I'm Akira.
I found a bug. I use sqlite3 on windows. I figure out that odd character on CSV mode when I use Mbcs. I understood that the columns is not converted by winUnicodeToMbcs when it's needs quotation on csv mode in WIN32 Please see lines from 2553 to 2558 below source. There is no utf8_printf, And It uses putc function directly. I guess that utf8_printf should be used there. So, When I use csv mode, Mbcs charcters show odd display. Thank you. shell.c:2537:static void output_csv(ShellState *p, const char *z, int bSep){ shell.c:2538: FILE *out = p->out; shell.c:2539: if( z==0 ){ shell.c:2540: utf8_printf(out,"%s",p->nullValue); shell.c:2541: }else{ shell.c:2542: int i; shell.c:2543: int nSep = strlen30(p->colSeparator); shell.c:2544: for(i=0; z[i]; i++){ shell.c:2545: if( needCsvQuote[((unsigned char*)z)[i]] shell.c:2546: || (z[i]==p->colSeparator[0] && shell.c:2547: (nSep==1 || memcmp(z, p->colSeparator, nSep)==0)) ){ shell.c:2548: i = 0; shell.c:2549: break; shell.c:2550: } shell.c:2551: } shell.c:2552: if( i==0 ){ shell.c:2553: putc('"', out); shell.c:2554: for(i=0; z[i]; i++){ shell.c:2555: if( z[i]=='"' ) putc('"', out); shell.c:2556: putc(z[i], out); shell.c:2557: } shell.c:2558: putc('"', out); shell.c:2559: }else{ shell.c:2560: utf8_printf(out, "%s", z); shell.c:2561: } shell.c:2562: } shell.c:2563: if( bSep ){ shell.c:2564: utf8_printf(p->out, "%s", p->colSeparator); shell.c:2565: } shell.c:2566:} _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users