Je suis en cours d'exécution d'un programme de Windows à partir de Java:l'accès aux fichiers créés par le processus d'exécution Java
String command = "cmd /C start "+fileName+".bat";
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command, null, new File(currWD));
int exitValue = pr.waitFor();
Le programme se termine avec succès (exitValue == 0) et crée un fichier « fileName » dans le répertoire de travail. Je suis en train de la même routine pour trouver la taille de ce fichier:
xmlFileSize = (new File(fileName)).length();
Java trouve le fichier mais il semble être vide (xmlFileSize == 0). Une fois que Java a fini, je peux voir, cependant, que le fichier n'est pas vide.
Comment puis-je résoudre ce problème? Tout ce que je veux, c'est que Java puisse évaluer correctement la taille du fichier créé par le programme Windows que Java a exécuté.
Si vous mettez le programme en pause après 'pr.waitFor()' pouvez-vous voir le fichier et le contenu d'un autre programme, par exemple le bloc-notes? – aioobe
Sur une note distincte, essayez d'utiliser la nouvelle classe ProcessBuilder au lieu de Runtime.exec. – dogbane
merci, aioobe! – Nick