// 初始化文件输入流tb_stream_ref_t istream = tb_stream_init_from_url("/home/utf8.txt");// 初始化文件输出流tb_stream_ref_t ostream = tb_stream_init_from_file("/home/gbk.txt", TB_FILE_MODE_RW | TB_FILE_MODE_CREAT | TB_FILE_MODE_BINARY | TB_FILE_MODE_TRUNC);/* 初始化字符集编码流, 以istream作为输入, utf8 => gbk * * 目前支持的所有字符集编码格式: * * TB_CHARSET_TYPE_ASCII * TB_CHARSET_TYPE_GB2312 * TB_CHARSET_TYPE_GBK * TB_CHARSET_TYPE_ISO8859 * TB_CHARSET_TYPE_UCS2 * TB_CHARSET_TYPE_UCS4 * TB_CHARSET_TYPE_UTF16 * TB_CHARSET_TYPE_UTF32 * TB_CHARSET_TYPE_UTF8 * * 注:针对多字节的编码格式,例如usc4, utf16, .. 默认转换用的是 大端格式 * 如果想要支持小端格式、本地端格式的数据, 可以传入: * * 小端格式数据: TB_CHARSET_TYPE_GBK | TB_CHARSET_TYPE_LE * * 本地端格式数据: TB_CHARSET_TYPE_UTF32 | TB_CHARSET_TYPE_NE */tb_stream_ref_t fstream = tb_stream_init_filter_from_charset(istream, TB_CHARSET_TYPE_UTF8, TB_CHARSET_TYPE_GBK);// 进行流编码if (istream && ostream && fstream) { tb_hong_t save = tb_transfer_done(fstream, ostream, 0, tb_null, tb_null);}// 释放流数据if (fstream) tb_stream_exit(fstream);if (istream) tb_stream_exit(istream);if (ostream) tb_stream_exit(ostream);