Win7を使用しています。私はjavaを使用して、ファイルの名前を最初に変更し(file.cmptrからfile.sqlに)、何かを実行します。その後、ファイルの名前を彼の古い名前(file.cmptr)に変更します。
しかし、これは失敗しました。ファイルの名前を変更すると、名前の変更に失敗することがありました。それはランダムに起こります。
-1番目のファイルがまったく変更されず、操作が行われない場合があります
-時々それは.sqlファイルに変更され、私は操作を取得しますが、ファイルは.sqlのままです
私の例では:
初めて拡張子を変更するとき:
int dotIndex = filechose.getPath().lastIndexOf('.'); String newpath = filechose.getPath().substring(0, dotIndex);; newpath = newpath + ".sql"; File filefinal = new File(newpath); filechose.renameTo(filefinal); String path=newpath;
新しいファイルで操作を行った後:
Runtime.getRuntime().exec("cmd /c mysql -u root gestiondestock <"+'"'+path+'"');
最後に、ファイルの名前をもう一度変更しようとしています
File file1 = new File(path);
int dotIndex1 = path.lastIndexOf('.');
String newpath1 = path.substring(0, dotIndex1);
newpath1 = newpath1 + ".computeramg";
File file2 = new File(newpath1);
file1.renameTo(file2);
解決しました。
それは私がこれだけを変更するのを待つことで動作します:
Process p = Runtime.getRuntime().exec("cmd /c mysql -u root gestiondestock <"+'"'+path+'"');
p.waitFor();