GB2312编码的繁体字不在big5字符集中!
你只有通过编码对照表转换iconv只能转换两个字符集的公共部分

解决方案 »

  1.   

    晕了,还是有点问题哟,神仙再现身一次吧iconv("gbk","big5","我是一只鱼")转换后结果中少了一只“鱼”:(
    iconv("gbk","big5","深圳市南山区")转换后结果中少了一个“区”:(看起来好像都会丢掉最后一个中文字,WHY?
    我尝试不转换直接输出,发现上面两个中文字符串最后一个中文字是空白(像是全角空格似的),但切换到简体中文编码是能够显示最后一个汉字的。
      

  2.   

    而且,我尝试在这个中文字符串前后加上英文字母,发现前面的能正确出来,后面的就消失了!iconv("gbk","big5","test我是一只鱼haha")转换的结果只是"test我是一只",后面的“鱼haha”都没了:(
      

  3.   

    mbstring? 是啥东东?不会是PHP内置的函数吧。要如何使用呢?就是我要将“test我是一只鱼haha”从GB2312转为BIG5,该如何写?
      

  4.   

    和iconv一样是php的一个库,只要启用就行
    两个编码参数和iconv正好相反,手册上有详细的说明
      

  5.   

    echo iconv("big5", "gbk", iconv("gbk","big5","我是一只魚"));
    這樣就對了
    因爲你的 鱼 在big5裏面沒有
      

  6.   

    建议先进行自然语言的转换.例如可以先把GB2312的繁体字转为GB2312的简体字,然后再iconv
      

  7.   

    先把GB2312的繁体字转为GB2312的简体字?
    如果用程序自动转的话,还是得用iconv啊,难道这时就不会转丢字符了?郁闷了,不知mbstring能不能搞定这个问题。
      

  8.   

    顺便问一下,我看我的编辑器EmEditor的另存为中,可以选择UTF-8,UTF-7,但也可以选择Unicode和Unicode big endian 。我记得好像UTF-8就是Unicode嘛,它为什么还要分开几种让我选呢?
    具体这4种有什么区别,哪位高手指教下?另外,选了除“UTF-7”的其它3种,都有另外一个选项“添加Unicode标记(BOM)”,这个干什么用的?
      

  9.   

    怪事了,明明我已经打开了php_mbstring.dll,可还是报错:
    Fatal error: Call to undefined function: mbstring() 我用phpinfo()看到已经支持了:
    mbstring
    Multibyte Support  enabled  
    Japanese support  enabled  
    Simplified chinese support  enabled  
    Traditional chinese support  enabled  
    Korean support  enabled  
    Russian support  enabled  
    Multibyte (japanese) regex support  enabled  mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. Directive Local Value Master Value 
    mbstring.detect_order no value no value 
    mbstring.encoding_translation Off Off 
    mbstring.func_overload 0 0 
    mbstring.http_input pass pass 
    mbstring.http_output pass pass 
    mbstring.internal_encoding ISO-8859-1 no value 
    mbstring.language neutral neutral 
    mbstring.substitute_character no value no value 
      

  10.   

    有依赖库?是哪个呢?
    在哪可以找到mbstring的中文手册?
      

  11.   

    mbstring不是函数。是一系列函数的统称。
    具体的用mb_convert_encoding或者mb_convert_variables 
    http://ca3.php.net/manual/en/ref.mbstring.php
      

  12.   

    不错,是应该用mb_convert_encoding('我是一只鱼','big5','gbk')
    可惜,像iconv一样不支持将"鱼"正确地转换为繁体"魚"!而是变成了"?":(
      

  13.   

    繁简转换(不是编码转换)严格上说已经不是属于技术上的范畴了,这个PHP开发组的人不可能帮你做的你要进行繁简转换就必须自己找一个繁体字和简体字的对应表,然后通过str_replace之类的函数来转换
      

  14.   

    那请问有进行这方面工作的组件或DLL库可用吗?
    或者有高手已经写好的源码类或函数?
      

  15.   

    对了,WORD2000好像就可以做到