![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Проблема состоит в том, что CmdTest.exec() не ждет пока будет выполнена команда. Команда просто передаётся cmd.exe и все. Сколько она будет выполняться - неизвестно. С выводом в System.out таких проблем нет, потому что по мере выполнения команды данные перекачиваются в System.out, а тут ты сам должен определить когда команда выполнилась, или просто подождать.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Akeem |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 14.7.2006 Где: Киев/Украина Репутация: нет Всего: 3 |
LSD, спасибо!
Все работает. Премного благодарен. Только вопрос: обезательно указывать кодировку? спрашиваю потому що если указать явно то выдает ошибку что неопознает кодировки. (мне не нужны лишние параметры) П.С. Код переписал под свою программу. -------------------- Мир огромен и мы только муравьи в нём! (С) formicha |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
У меня без указания кодировки не все работает корректно, вместо русских буквы кракозябры. Можешь переписать так:
тогда никаких Exception-ов выкидываться не будет. Добавлено через 37 секунд К тому же часть команд выводит данные в 866 кодировке, часть в 1251. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Akeem |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 14.7.2006 Где: Киев/Украина Репутация: нет Всего: 3 |
Ну в принципе у меня проблем с кодировкой не должно быть. Все результаты и команды на англ.
П.С. Я вообще убрал объявление кодировки с функции.
-------------------- Мир огромен и мы только муравьи в нём! (С) formicha |
|||
|
||||
| Resilient |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 26.11.2008 Репутация: нет Всего: нет |
Приветствую... вобщем-то тоже чайник в Яве, надеюсь, что только пока что
А нету ли способа гарантированно дождаться выполнения команды? и узнать, что вернула та програмка. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
А нафига? Если тебе нужно выполнить некую программу, то вызывай непосредственно её, а не через cmd.exe и таких проблем не будет. А если тебе нужно выполнить команду именно cmd.exe, то в любом случае ты будешь парсить вывод этой команды и по нему уже можно будет определить, что команда завершена. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Resilient |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 26.11.2008 Репутация: нет Всего: нет |
В данном случае неизвестно других методов вызова, кроме как из командной строки :(
Нужно же дождаться окончания выполнения и в зависимости от кода возврата в cmd продолжить. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Вызова чего? Ты программу пытаешься вызвать или внутреннюю команду cmd.exe? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Resilient |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 26.11.2008 Репутация: нет Всего: нет |
программу. И другого вызова в данном случае не получится.
НО у меня оно дожидается окончания работы. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |