Java JTextArea обрабатывает неотображаемые последовательности ASCII - PullRequest
2 голосов
/ 12 марта 2011

Потоковый вывод команды Linux в JTextArea.Как я могу обработать последовательности ASCII.Последовательности, как правило, используются для выделения текста в среде оболочки.

JTEXTAREA выглядит следующим образом:

ls -altr
drwx------  2 user    80 2009-11-25 07:23 [01;34mDocuments[00m
drwxr-xr-x  2 user    48 2009-11-25 07:23 [01;34mbin[00m
-rw-r--r--  1 user  1177 2009-11-25 07:23 [00m.bashrc[00m
drwx------  8 user   608 2009-11-25 07:23 [01;34m.[00m
drwxr-xr-x 88 user  2096 2011-03-09 08:47 [01;34m..[00m
-rw-------  1 user   472 2011-03-12 11:38 [00m.bash_history[00m

Где, как мне следовало бы, раздеть или разобраться со странными последовательностями ASCII '[01, 34м.Я не могу фильтровать символы, потому что это последовательности символов.

Идеи?

Ответы [ 3 ]

1 голос
/ 12 марта 2011

Я не могу фильтровать символы, потому что это последовательности символов.

Вы можете использовать Фильтр документов . Строка символов для добавления в документ передается в фильтр. Вы можете удалить любой символ из строки перед обновлением документа.

0 голосов
/ 31 мая 2011

Это швы, чтобы быть последовательностями выхода цвета.
Должен быть какой-то параметр для отключения цветов в списке ls, например --color=never.

И, возможно, --hide-control-chars, чтобы избежать неграфических символов.

0 голосов
/ 12 марта 2011

escape-последовательности ANSI начинаются с <esc>[ и заканчиваются m - их можно отфильтровать

...