#java #io #inputstream #outputstream #keyboard-hook
#java #io #входной поток #outputstream #клавиатура-хук
Вопрос:
Если бы у меня был файл numbers.txt
со следующей строкой:
*1222223* @4555556 !7888889! $19.99
Как бы я прочитал эту строку, удалил символы и вывел ее с помощью эмуляции клавиатуры следующим образом:
4555556 [TAB] 7888889 [TAB] [TAB] 1222223 [TAB] 19.99
[TAB] является эмуляцией клавиши табуляции, а не буквенной строки.
Конечно, во время вывода я не знаю, что это за числа или даже в каком порядке эти числа находятся изначально. Подумайте о символах *
@
!
и $
как о заполнителях для расположения этих чисел, и я хочу перейти от * @ ! $
ввода к @ ! * $
выводу.
Дайте мне знать, если это недостаточно конкретно.
РЕДАКТИРОВАТЬ: я абсолютно ничего не знаю о Java. Я делаю пакетные / шелл-скрипты, HTML, CSS и немного PHP. Мой вопрос относится к действию, которое моя компания должна реализовать в простой программе, но мы плохо оснащены Java-ноу-хау.
Комментарии:
1. табуляция может быть добавлена к строке с помощью
t
escape-последовательности. Логика синтаксического анализа и упорядочения чисел полностью зависит от вас.2. Не редактируйте Closed в заголовке. Если вы считаете, что вопрос устарел, вы можете удалить его самостоятельно.
3. Не удается удалить его, потому что есть ответ. И нет правильных флагов для использования, чтобы проголосовать за его закрытие.
Ответ №1:
Если я вас правильно понимаю, то вы ищете что-то вроде этого
http://gruimed.blogspot.com/2009/09/using-java-robot-to-type-text-strings.html
Редактировать: чтобы прочитать файл посимвольно, вы можете использовать это:
http://www.java2s.com/Code/Java/File-Input-Output/Readfilecharacterbycharacter.htm
Учитывая, что в первой ссылке link с примером робота есть метод
private void typeChar(символ c)
чтобы перевести каждый символ в ключевой код и ввести его, используя java.awt.Robot. Исключите любые ненужные символы, используя условные обозначения в логике ввода, и вставьте вкладки, используя эмуляцию в роботе с помощью ключевого кода TAB, который хранится в java.awt.event.Константа KeyEvent.VK_TAB.
Комментарии:
1. Добавление дополнительной информации в основной пост для «Предположения».
2. Спасибо за информацию. Может пройти несколько дней или недель, прежде чем он будет протестирован, но я довольно хорошо обновляю и голосую по своим вопросам.
3. Похоже, руководство решило не продвигаться вперед, поэтому я не буду его тестировать. Однако спасибо за помощь.