javajarファイルを実行するphpからバッチファイルを実行しています。コマンドを実行すると、通常は正常に実行されますが、phpを使用して実行すると正常に実行されます。上記のエラーが発生します。
誰か助けてもらえますか?
Java:
SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
//get current date time
//tdt = new java.util.Date();
Calendar c = Calendar.getInstance();
try {
tdt= sdf.parse(startdate);
} catch (ParseException ex) {
Logger.getLogger(ReportExporter.class.getName()).log(Level.SEVERE, null, ex);
}
PHP:
$command ="cmd /c ".EXPORT_BATCH_PATH." ".$fromdate." ".$todate." &";
echo $command;
$result = system($command, $output);
また:
$command ="cmd /c ".EXPORT_BATCH_PATH." ".$fromdate." ".$todate." &";
echo $command;
$result = exec($command, $output);
上記のecho$command値を手動で実行すると、正しく実行されます。しかし、phpの実行によりエラーが発生します。
私のPHPスクリプトにはこの行が含まれています。
<?php header('Content-type: text/html; charset=utf-8');
setlocale(LC_ALL, 'en_US');?>
テキストのエンコードに問題はありますか?
受け入れられた回答を見てください。以下の行は私の問題を解決しました。
java -Duser.language=en -Duser.region=US -Dfile.encoding=UTF-8 -jar c:\Progra~1\MyApplication\MyApplication.jar -exportfromto %1 %2