将命令行参数从Java传递到C ++编码

时间:2011-11-10 14:51:25

标签: java c++ encoding parameters

我有一个Java应用程序,我希望在其中调用另一个C ++应用程序。 为此,在我的Java中我打电话

Runtime.exec(args)

我的arg是“HelloWorldèçàœ”。

当我的C ++收到这个arg时,它将其视为“HelloWorld ????”。我查看了记忆地图,字符èçàœ显示为3f 3f 3f 3f。

(另外,我不确定这是否相关,但是当我编译我的C ++时,我选择了选项:“字符集=使用多字节字符集”(在Properties-> General中)。)

问:我怎样才能将这样的param从Java传递给C ++?

由于

1 个答案:

答案 0 :(得分:0)

这可能是因为你在双方使用的编码。尝试确保您的“args”在Java中存储为UTF-8字符串,并尝试在C ++代码中读取为UTF-8字符串。

Othewise Java使用平台的默认编码,甚至可能不支持这些“èçàœ”字符。