C# 如何在Crystal Report中显示unicode字符串

C# 如何在Crystal Report中显示unicode字符串,c#,vb.net,crystal-reports,C#,Vb.net,Crystal Reports,在我的开发PC上,我有64位windows 8。在这里,我可以看到Unicode字符串,也可以使用crystal report打印它 但当我将我的应用程序安装到其他PC(Windows7 32位)时,我看到的是方形框而不是Unicode字符串 然后我打开记事本(在另一台电脑上),将字体更改为我在crystal report中使用的相同字体,即Cambria 在记事本里我可以写Unicode字符,没问题。 但在crystal report中,我为什么会看到方形框 有什么建议吗? 在crystal

在我的开发PC上,我有64位windows 8。在这里,我可以看到Unicode字符串,也可以使用crystal report打印它

但当我将我的应用程序安装到其他PC(Windows7 32位)时,我看到的是方形框而不是Unicode字符串

然后我打开记事本(在另一台电脑上),将字体更改为我在crystal report中使用的相同字体,即Cambria

在记事本里我可以写Unicode字符,没问题。 但在crystal report中,我为什么会看到方形框

有什么建议吗? 在crystal report中,我使用标签显示Unicode字符串

编辑 我在MS SQL SERVER本地数据库中使用NVARCHAR作为存储数据类型。现在,我使用N'UnicodeString'存储unicode字符串数据。插入后,我运行一个select查询,看到所有记录都很好,并且没有unicode显示问题。 制作一个数据集并用它创建一个crystal报表。 运行并打印crystal报告。 一切都很好(开发PC)


现在,生产结束后,我将exe传输到另一台运行Windows 7 32位的pc上并运行它。除了变成方框的unicode字符外,一切正常。

好的,看来我的问题解决了。实际上,在我的客户电脑中,以前安装了另一个名为AVRO键盘的软件。由于这个原因,我遇到了字体问题


我在虚拟PC上分别安装了64位和32位Windows 7,并在这两台电脑上测试了我的应用程序,在字体方面没有问题。

@Tanmay Majumder,这只是字体问题

在客户端PC上设置所需字体。 然后像这样输入记事本(স্টোর কপি) 现在在Crystal Report中复制并通过。并将字体名称更改为like(Bangla)


C这样-

可能是数据存储中的问题,例如,数据库表中列的数据类型应该是
NVARCHAR
,而不是
VARCHAR
。是的,我使用的是NVARCHAR,请阅读我的完整问题。我可以在我的开发PC上看到unicode字符串,但在客户端的PC中看不到。在您的开发cli中正确地看到字符串ent并不意味着你正在使用
NVARCHAR
,你在问题中没有提到你已经使用了
NVARCHAR
作为列的数据类型。因此,如果你的列类型是
NVARCHAR
,请编辑这个问题并对其进行说明。这不是与安装的字体有关吗?例如,你的开发工具上安装了字体包含unicode字符串标志符号的中文,而目标计算机没有?