Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用命令从.NET Windows应用程序调用Java exe_Java_C#_Command Line - Fatal编程技术网

使用命令从.NET Windows应用程序调用Java exe

使用命令从.NET Windows应用程序调用Java exe,java,c#,command-line,Java,C#,Command Line,使用命令行参数从.net(windows应用程序)调用Java exe时丢失了汉字 我使用.net(Windows应用程序)上的进程对象(传递参数)调用Java exe,当我在Java主函数中读取命令行参数时,它被转换为“?” 两个应用程序(Java和.net)都运行在同一台windows计算机上 ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = Application.StartupPath +

使用命令行参数从.net(windows应用程序)调用Java exe时丢失了汉字

我使用.net(Windows应用程序)上的进程对象(传递参数)调用Java exe,当我在Java主函数中读取命令行参数时,它被转换为“?” 两个应用程序(Java和.net)都运行在同一台windows计算机上

ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = Application.StartupPath + "\\Java_App.exe";
startInfo.Arguments = "<soapenv:Body><tem:Add><tem:intA>你好嗎)</tem:intA><tem:intB>你好嗎)</tem:intB></tem:Add></soapenv:Body> 你好嗎.txt";
Process p1 = Process.Start(startInfo);
ProcessStartInfo startInfo=新的ProcessStartInfo();
startInfo.FileName=Application.startpath+“\\Java\u App.exe”;
startInfo.Arguments=”你好嗎)你好嗎) 你好嗎.txt”;
过程p1=过程启动(startInfo);

我希望Java端使用相同的汉字,而不是“?”

您的计算机代码页设置为什么?我的计算机代码页是437是的,没有您想要的汉字。您需要切换代码页或尝试我尚未使用的内容。在windows中,有一个用于启用UTF8的复选框,请尝试启用它,重新启动电脑,然后重试。该复选框位于控制面板>区域>管理>更改系统区域设置…此外,在将c#UTF16字符串传递到参数属性之前,您可能必须将其转换为UTF8。我尝试了您建议的两个选项,但两种方法都不起作用。更改代码页后,我在java应用程序中得到了垃圾字符,而不是“?”。