0

次のコードを実行すると問題が発生します。

  Process pr = rt.exec("mysql -uroot -pcdac123 -e \""
              + "use rrrlfdev;load data local infile '"
              + fpath
              + "' into table t_adm_despatch fields terminated by ',' enclosed by '\\\"' lines terminated by '\\n'  (dispatchno,dispatchdate,dispatchName, dispatchAddress, fileNo)"
              + "\"");

同じことがWindowsでも問題なく実行されています。

4

1 に答える 1

0

Javaは、コマンドと引数を別々に知る必要があります。あなたは2つのことをすることができます

1)exec(String command、String [] arguments)を使用して、cmdとargsを別々に提供することができます

2)mysqlコマンドと各引数を二重引用符で囲むことができます。

あなたの場合、エラーは引用符の置き忘れです。そのようなコマンドはありません

mysql -uroot -pcdac123 -e \ ".... ..

これがヘルプファイルを表示する理由です。mysqlコマンドの後に二重引用符を配置する必要があります。

mysql \ "-uroot -pcdac123-e....。

これがお役に立てば幸いです

于 2012-08-17T11:34:43.900 に答える