JTextArea JLabel сравнить два txt. файлы построчно

все. Я завершил свой код двумя текстовыми файлами, показав их в одной и той же области.

но я хочу сравнить два текстовых файла построчно. и я хочу показать различия с помощью цветных линий и, наконец, буквы или слова, которые отличаются, разные строки я собираюсь выделить жирным шрифтом.

как я могу начать?

спасибо, мой код здесь.


person Jes    schedule 30.07.2012    source источник
comment
Возможный дубликат этого вопроса, который решение, рекомендующее использовать JEditorPane, а не JTextArea.   -  person Rob I    schedule 30.07.2012


Ответы (2)


JTextArea может создать подходящее представление, но вам все равно нужно смоделировать различия. Я бы посмотрел на Eclipse или NetBeans или, возможно, svnview.

person trashgod    schedule 30.07.2012
comment
какие советы по алгоритму? - person Jes; 30.07.2012
comment
См. также diff. Откровенно говоря, есть ли веская причина изобретать это заново? - person trashgod; 30.07.2012
comment
просто потому, что я не нашел простого алгоритма сравнения в Интернете, я запутался, поэтому я должен сделать это. - person Jes; 30.07.2012
comment
JTextArea — это всего лишь обычный текст, разве вам не понадобился бы JTextPane, чтобы обеспечить поддержку атрибутов для раскрашивания? - person MadProgrammer; 31.07.2012
comment
@MadProgrammer: хороший момент, также поднятый Робом выше. JTextArea чуть более шустрый и поддерживает подсветку; это может подойти. vstl: Насколько я знаю, простого ответа нет. Что вы пробовали? diff-utils? - person trashgod; 31.07.2012

Возможно, вам придется попросить пользователя загрузить обе версии файла.

На сервере вам нужно сравнить построчно и сохранить номера строк различий файлов в другом файле или месте.

Затем при отображении получите номера строк и придайте им надлежащее оформление (например, полужирный шрифт и т. д.).

person Rock    schedule 08.11.2012