免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5783 | 回复: 10
打印 上一主题 下一主题

谁知道linux环境下excel单元格里中文用什么编码方式?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-08 15:59 |只看该作者 |倒序浏览
10可用积分
往excel里写东西,中文老是乱码。
use Unicode::Map();
my $Map = new Unicode::Map("GB2312");
$worksheet->write_unicode(2, 2, $Map->to_unicode("考生姓名"));
上面这段是网上的代码,在linux环境下单元格里是个小格子,乱码,但把这个excel导入到windows下面能正常显示。

我照着上面的那段代码写了自己的程序
#!usr/local/perl5/bin/perl
use Spreadsheet::WriteExcel;
use Unicode::Map();
my $Map=new Unicode::Map("GB2312");
my $file="output_files/abc.xls";
my $workbook=Spreadsheet::WriteExcel->new($file);
my $worksheet=$workbook->add_worksheet();
...
.....
.....
foreach my $a(@Doc){
        $row++;
        $col=0;
        my @b=@$a;
        foreach my $c(@b){
                $worksheet->write_unicode($row,$col,$Map->to_unicode($c));
                $col++;
        }
}

在linux环境下依然是乱码,导入到windows下面还是乱码。linux环境下乱码无所谓,我的客户都是在windows下的,只要能在windows下正常显示就行了。
Excel单元格里会有中英文混合的小段文字,原因应该不是出在这吧??
望高手赐教,先谢谢了!
我身上就只有十分,只能给这么多了。。。

最佳答案

查看完整内容

你需要测试一下,就知道了。

论坛徽章:
0
2 [报告]
发表于 2009-04-08 15:59 |只看该作者
原帖由 uuuucat 于 2009-4-8 16:44 发表
看了一下,系统支持中文的几种编码方式,我在linux环境下测试,excel里就是出不来中文。。。
我的客户从linux服务器上下载excel,打开会是乱码吗?

你需要测试一下,就知道了。

论坛徽章:
0
3 [报告]
发表于 2009-04-08 16:01 |只看该作者
先查看你的LINUX支持哪些字符集;
先试验全部是中文有没有问题,全部是英文有没有问题?

论坛徽章:
0
4 [报告]
发表于 2009-04-08 16:05 |只看该作者
我在终端里看到字符编码那块显示当前区域GB18030 ,这个应该兼容GB2312吧??
我曾经试过把GB2312改成utf-8,程序就会报错,不能执行了!

论坛徽章:
0
5 [报告]
发表于 2009-04-08 16:17 |只看该作者
原帖由 uuuucat 于 2009-4-8 16:05 发表
我在终端里看到字符编码那块显示当前区域GB18030 ,这个应该兼容GB2312吧??
我曾经试过把GB2312改成utf-8,程序就会报错,不能执行了!

GB18030包含GB2312。

论坛徽章:
0
6 [报告]
发表于 2009-04-08 16:25 |只看该作者
那现在乱码的问题怎么解决啊?
怎么才能知道自己的linux支持哪些字符集?

论坛徽章:
0
7 [报告]
发表于 2009-04-08 16:29 |只看该作者
原帖由 uuuucat 于 2009-4-8 16:25 发表
那现在乱码的问题怎么解决啊?
怎么才能知道自己的linux支持哪些字符集?

locale -a 可以看到支持的各种Locale

http://linux.chinaunix.net/bbs/viewthread.php?tid=843714

论坛徽章:
0
8 [报告]
发表于 2009-04-08 16:30 |只看该作者
原帖由 uuuucat 于 2009-4-8 16:25 发表
那现在乱码的问题怎么解决啊?
怎么才能知道自己的linux支持哪些字符集?

如果系统支持你的字符集,乱码还可能和字体有关系?

论坛徽章:
0
9 [报告]
发表于 2009-04-08 16:44 |只看该作者
看了一下,系统支持中文的几种编码方式,我在linux环境下测试,excel里就是出不来中文。。。
我的客户从linux服务器上下载excel,打开会是乱码吗?

论坛徽章:
0
10 [报告]
发表于 2009-04-08 16:53 |只看该作者
我现在只是在自己的虚拟机里做呢,我的头不让我动服务器。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP