Помощь ввода / вывода с .jar в Java? - PullRequest
3 голосов
/ 07 июля 2011

Не стесняйтесь прыгать на TL; др.

Таков мой обычный опыт работы с .jar в команде:

java -cp test.jar test q a o открыть банку

Далее что-то вроде UF UD UR etc, enter to the program

Это дает мне примерно 20 строк "ответа"

Я хочу сделать следующее:

1 - запустить банку, используя параметры, как указано выше Эти параметры должны определяться графическим интерфейсом (флажки и т. Д., Я могу сделать это обязательно.)

2 - пока этот .jar открыт, отправьте что-нибудь по UF UD UR и т. Д., Как и прежде. Эти представления должны также определяться графическим интерфейсом.

3 - взять вывод из этого .jar в фоновом режиме и выбросить его в метку или что-то в этом духе (как только он будет в строке, я в порядке. Мне просто нужна помощь, чтобы схватить его).

В основном: открытая банка входные данные в банке получить вывод, который идет после ввода вывод на дисплей.

Я видел несколько ссылок, связанных с вводом / выводом, и я пытался их прочитать, но большинство из них - вопросы по этому вопросу, но не рабочие ответы.

ТЛ; др Если бы кто-то мог связать меня с рабочим примером ввода-вывода Java с помощью .jar, который запускается в команде, я был бы очень признателен.

1 Ответ

1 голос
/ 07 июля 2011

Вы можете попробовать играть напрямую с java.util.JarFile:

JarFile jar = new JarFile( "path to jar" ); // Opens the jar

Enumerator<JarEntry> es = jar.entries(); //Enumerator to the jar entries

while( es.hasMoreElements() ) { //Iterates until all entries have been visited

  JarEntry entry = es.nextElement(); //Gets the next entry in the jar

  System.out.println(  entry.getName() ); //Prints the entry name

  InputStream in = jar.getInputStream( entry ); //returns an inputstream from the entry
  ... 
}
...