我有这个单词comЯade,但由于俄语的Я,我无法在HTML中打印它... 我尝试了:
$HTML::Entities::char2entity{'Я'} = 'Я';
$HTML::Entities::char2entity{'1071'} = 'Я';
$HTML::Entities::char2entity{'ï'} = 'Я';
$str = HTML::Entities::encode_entities( $str, q{Яï1071} );
之后我尝试了以下操作:
$str =~ s/1071/Я/g;
$str =~ s/Я/Я/g;
$str =~ s/ï/Я/g;
但无论哪种情况,我都会遇到以下错误:
在 /usr/local/share/perl/5.10.1/Starman/Server.pm 的第 470 行 syswrite 中出现宽字符。
为什么呢?
这是部分代码:
title.mi
<%init>
binmode STDOUT, ':encoding(UTF-8)';
($str =~ s/&/%26/g;); #this is working
$str =~ s/1071/Я/g;
$str =~ s/Я/Я/g;
$str =~ s/ï/Я/g;
</%init>
<div class="bd-headline left">
<h1 style="margin-top:0; padding-top:0;"> <% $str %> </h1>
</div>
base.mc
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>