Skip to content
BSD licensed charset/encoding converter library with more functionalities than libiconv
C TeX Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Table format:

Internal encoding:
* Should be as unicoded as possible
* BSDCONV special chars are prefixed with 00
  * 0000 is used by RAW
* UNICODE is prefixed with 01
* CNS11643 is prefixed with 02

Though many charset encoding is ascii-compatible,
 ascii is excluded from their codecs to provide flexibility.

Compiling & Installation (FreeBSD):
sudo make install

Convert traditional chinese big5 to simplified chinese utf-8
> bsdconv big5,ascii:chs:utf-8,ascii in.txt out.txt

Convert traditional chinese utf-8 to simplified chinese utf-8
> bsdconv utf-8,ascii:zhtw_normalize:cht:utf-8,ascii in.txt out.txt

Convert big5 data, traditional chinese to simplified chinese, 
CRLF/CR/LF to CRLF, to big5 data, translate simplified chinese words, which are
not in big5, to HTML entities
> bsdconv big5,ascii:chs,win:cp950,ascii,htmlentity in.txt out.txt

Very useful for migrating MySQL DB from Big5 to UTF-8
> bsdconv htmlentity,big5-5c,big5,ascii:utf-8,ascii in.sql out.sql

More example:
> bsdconv big5,ascii:nl2br:ascii,html-img in.txt out.htm
#html-img is actually ASCII-HTML-UNICODE-IMG

> bsdconv ascii,utf-8:ascii,ascii-html-cns11643-img in.txt out.htm
#if you prefer to use glyph image from

Maintain inter map:
> bsdconv bsdconv_keyword,bsdconv:bsdconv_keyword,utf-8,ascii MAP.txt edit.tmp
> vi edit.tmp
> bsdconv bsdconv_keyword,ascii,utf-8:bsdconv_keyword,bsdconv edit.tmp MAP.txt

Latest build could be found at
Download and extract it, then goto build/ and run mk_table.bat
then copy everythings in build/ to c:\bsdconv\

If you want to install to directory other than default path
set BSDCONV_PATH environment variable to your path
Something went wrong with that request. Please try again.