Bonjour,

Je suis actuelement sur un projet où je dois lancer un programme externe (en fortran) et communiquer avec lui.
Ce programme fortran a une ihm en ligne de commande pour recuperer certaines informations comme le nom d'un fichier d'entrée et le nom du fichier de sortie.

Je n'ai pas de probleme pour lancer ce programme externe mais je n'arrive pas a bien comuniquer avec lui.
J'utilise le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
      Runtime RT=Runtime.getRuntime();
      try {
          System.out.println("Debut recouvrement");
          Process P=RT.exec(Default_dir + "Essai/prog.exe");
          byte[] FichierE=(byte[])(Default_dir + "Essai/F0").getBytes();
          byte[] FichierS=(byte[])(Default_dir + "Essai/E0").getBytes();
 
          OutputStream out=P.getOutputStream();
          out.write('o');
          out.write(FichierE);
          out.write('1');
          out.write('n');
          out.write(FichierS);
          out.write('0');
          out.write('n');
          System.out.println(P.waitFor());
 
          System.out.println("Fin recouvrement");
 
        }
J'essai donc d'envoyer successivement les "réponses" : 'o', 'FichierE' , '1' , 'n', 'FichierS' , '0', 'n' au programme Externe malheuresement sans succes.

Est ce ma définition de out qui est movaise ?

Merci pour votre aide