php如何把gb2312字符串转换为unicode字符串呢? iconv ("gb2312","UNICODE","$str"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 to cpc1984 还是乱码 忘了说了,我是将转换后的unicode字符串插入到word文档,才知道是乱码的。而我用java和c++相应的转换函数就没有问题 to fxs_2008 什么意思?能具体说说吗?不转换的话,直接将gb2312的字符串写入word,那是绝对的乱码。 如果是用gb2312插word,原则上应是可以自动识别的可以发一下你的代码看看 是通过调用一个叫puno的php插件来控制openoffice.$footer_x_text是openoffice的文本类对象.insertString 方法负责插入内容。 $str = "中国!"; $str_converted = iconv ("gb2312", "UNICODE", "$str"); //$str = "涓浗!"; //$str_converted = iconv ("utf-8", "UNICODE", "$str"); echo "$str_converted\n"; $footer_x_text->insertString ($x_footer_text_cursor, $str_converted, false);全部的代码在 http://www.wstech2.net/index.php?do=puno_ex3我的程序基本上是照着写的 openoffice不熟,MS word 或可以另你那个是PDF,进word不知行不行 to fxs_2008 对,我把生成pdf改成doc了生成doc是没有问题,但是插入中文是乱码! 真麻烦啊,java的string类直接就可以了,对c++提供了oustring这样处理unicode的接口。用php居然出现这样的问题。 pdf中有没有中文字符集啊!在word中用utf-8要把揉之类的替换成/u25545word可以自动识别 to jianglin28290 php中 要如何转换? $str=iconv("gb2312","utf-8",$str);$arr = split("&#",$str);$str="";if(count($arr)>1) { for($i=0;$i<count($arr)-2;$i++){ $str.= $arr[$i].'/u'; }}return $str;试试看!我没有试过! 谢谢jianglin28290 =======================我发现,用iconv转换出来的unicode,每个汉字占3个字节。而真正的unicode应该是个短整型的数字,占两个字节。这是为什么? 一个简单的cookie求教 怎么限制当前某个IP地址的访问 段双晋:php有gmdate()函数,那么mysql呢? 如何对网站目录进行操作(php) 求phrame的mvc中文资料。 请教一个简单的问题 请教各位高手,下面是PHP与ORACLE查询程式出现的提示,如何解决? 2002真心希望PHP板块能够越来越好!也向yorgo、zxyufan二位斑竹表示慰问。 a question about mssql PHP 扩展开发遇到的问题 求大家好的推荐文学站的代码! 一个小问题PHP..在线等答案
还是乱码
而我用java和c++相应的转换函数就没有问题
什么意思?能具体说说吗?
不转换的话,直接将gb2312的字符串写入word,那是绝对的乱码。
可以发一下你的代码看看
$footer_x_text是openoffice的文本类对象.insertString 方法负责插入内容。 $str = "中国!";
$str_converted = iconv ("gb2312", "UNICODE", "$str");
//$str = "涓浗!";
//$str_converted = iconv ("utf-8", "UNICODE", "$str");
echo "$str_converted\n";
$footer_x_text->insertString ($x_footer_text_cursor, $str_converted, false);
全部的代码在 http://www.wstech2.net/index.php?do=puno_ex3
我的程序基本上是照着写的
MS word 或可以
另你那个是PDF,进word不知行不行
对,我把生成pdf改成doc了
生成doc是没有问题,但是插入中文是乱码!
用php居然出现这样的问题。
在word中用utf-8
要把揉之类的替换成/u25545word可以自动识别
php中 要如何转换?
$arr = split("&#",$str);
$str="";
if(count($arr)>1) {
for($i=0;$i<count($arr)-2;$i++){
$str.= $arr[$i].'/u';
}
}
return $str;
试试看!我没有试过!
而真正的unicode应该是个短整型的数字,占两个字节。
这是为什么?