将命令行参数从Java传递到c++编码
Passing commandline parameters from Java to C++ encoding
我有一个Java应用程序,我希望在其中调用另一个c++应用程序。为此,我在Java中调用
Runtime.exec(args)
我的参数是"HelloWorldèçàœ"。
当我的c++接收到这个参数时,它将其视为"HelloWorld????"。我查看了内存映射,字符èçàœ显示为3f 3f 3f。
(此外,我不确定这是否相关,但当我编译我的c++时,我选择了选项:"字符集=使用多字节字符集"(在属性->一般)。)
问:如何将这样的参数从Java传递到c++ ?
谢谢
这可能是因为您在两边使用的编码。尽量确保你的"args"在Java中作为UTF-8字符串存储,并尝试在你的c++代码中作为UTF-8字符串读取。
否则Java使用平台的默认编码,甚至可能不支持这些"èçàœ"字符。
相关文章:
- 如何确定我已使用非编码文件到达 EOF?
- 使用 MATLAB 编码器生成C++代码:编译错误"undefined reference to `rgb2gray_tbb_real64'"
- 在卡萨布兰卡形成编码参数的列表
- 使用C++进行游程编码
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 使用已使用 java 编码的 openssl 解码数据
- boost 是否有按特殊类型值编码状态"compact optional"?
- 如何在CPP的给定目录中列出UTF编码的文件名?
- 如何使用 C++将 ISO-2022-KR 编码转换为 UTF-8 编码?
- 绝对编码器十六进制输入
- 防止C++中的硬编码数字
- 将C++ std::string 转换为 UTF-16-LE 编码的字符串
- 使用文件内容作为硬编码字符串
- 运行长度编码程序 c++ 的问题
- 以C++为单位进行运行长度编码
- *新的编码器*格式和运算符
- 在CRC-16 CCITT中将数据从二进制解码为文本,我应该输入一个码字,使用CRC生成器进行编码
- 使用 IMFSinkWriter 编码的视频的播放速度会根据宽度而变化
- C++和带有国家符号的文件路径(也许用 UTF8 编码)
- 仅在 zlib c++ 库中强制动态编码