Java Runtime exec() 無法正確轉換字符
这可能已经在之前得到过答案,但这是关于unicode的,我不认为这是unicode(它在ASCII中,所以...)。
当我在我的终端中执行此命令时,没有任何问题
vboxmanage setextradata "Test Machine" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222
但是,当我在Java中使用以下内容时
Runtime.getRuntime().exec("vboxmanage setextradata \"Test Machine\" \"VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort\" 2222");
它返回一个错误:未注册的 vm '“TestMachine”'
对于其中有空格的参数(如Test\Machine)也是如此,然后它不会转义空格。
现在我认为这与字符编码有关,但我没有看到任何设置该o_O