错误CS1012:字符文字中的字符太多 - 为什么它有时会编译,有时不会编译

时间:2014-03-22 19:02:42

标签: c# launchpad

我有这段代码:

this.lentry2.InvisibleChar = '●';

除了ubuntu的启动板之外,它在任何地方都能完美编译。当我在那里构建它时,我收到此CS1012错误。为什么它可以在我自己的PC上运行,但不能在启动板上运行?这个角色真的没有被c#“支持”,所以我很幸运,它可以在我自己的电脑上运行,或者在启动板上有什么问题吗?

这是一个日志:https://launchpadlibrarian.net/170375518/buildlog_ubuntu-precise-amd64.pidgeon_1.2.6.0ppa1.1ubuntu1_FAILEDTOBUILD.txt.gz

1 个答案:

答案 0 :(得分:1)

我怀疑它与编译器用于将文件转换为文本的字符编码有关。

您可以使用mcs参数在-codepage命令行中指定此项。 (或/codepage中的csc。)

或者,为了更容易在任何地方获得此权限,请将所有源代码保存为ASCII并在字符文字中使用Unicode转义序列,例如

this.lentry2.InvisibleChar = '\u25CF';