如何通过IKVM为从C#代码中使用的原始Java类设置系统属性?
我正在处理一些使用IKVM移植到C#的Java代码。有些类已经包含在C#类中,但还没有包含所有Java API。所以我有一些类的两个版本,因为只包含了一小部分API,我必须直接在我的C#代码中使用原始Java类。
当我使用C#包装版本时,我可以正确解析UTF-8编码的XML文件。当我尝试直接使用底层Java类时,我得到解析错误(" prolog&#34中不允许的内容;),表明正在使用错误的字符集进行解析。
在Java中,我们通过设置-Dfile.encoding = UTF-8来解决编码问题,我尝试在C#中执行相同操作,如下所示:
static FeedSample()
{
java.lang.System.setProperty("file.encoding", "UTF-8");
}
当我使用C#包装类时,会选择此设置。当我直接使用底层Java类时,系统属性不会被选中。我想我在这里遗漏了一些明显的东西。我也尝试将-Dfile.encoding作为命令行参数,但这没有帮助。