Шаги для чтения текстового файла в определенные столбцы JTable с использованием biojava - PullRequest
0 голосов
/ 18 июня 2011

Вот типичный входной файл .txt (также называемый как файл fasta):

>contig00001  length=586   numreads=4
CGGGAAATTATCcGCGCCTTCACCGCCGCCGGTTCCACCGACGAACGGATACTGCGtGaa
ggCCGCGATCCCGTCggaCGGAAAaCGCCcTGGCCCGGGAaCATACCGTTCGGGCCGCCA
AGTGTTATAGCCGGACCACTTGTCAGAACATTTCCaaTCCGAAGATGTGAGTtCGGAAGg
TAAAAGCCCGACAAGTTGCGCGgTGAATTTACCTTtACcGCACGATATGCGTCCGTATTA
AaGAAAaGTTCGAAATTATCAGTAAGGCCGACCTGAAaGCTGACCGGGAGTTCAACAAAA
TCTGCATCACCcGGgTCACGGTCGAAATTGCTGTACGCGGCGCTGAACGTAAATTCACCC
TTTcTAAGGGTGTCGCcGTCGTAAACCGTAAaCAaGCCGGTAGCGCCGCCCATCGGGCCG
CCGGTACCAACCGTCGGTGCCGTGTTTCTtGCATCATTGTCCGATCGAGCGTTCTCGTCC
GCTTGTGCAAaTCCTGCAaTAGCTAACGTGAAAACGATCAGAGCTGTTGTAAATACTCTA
TAAGCGAGATTCATCACATTCCTCcGCCGAAATAAAAAGTTAATTt

>contig00002  length=554   numreads=4
TGCGCCAaCCGCGCTCTtCATAAaTGGGCACTGCTCCCGATGGCCgACTCGGGCGGTTCG
CCATGAGATCTTTGCCtACCcAGgAaCtCACcACCAAGTCTGATTGCTGTGTGTTTtCTT
CAAGTCCCTATTTCTATTCtCTTtAATGGAACCCGTAGGAAACCCGTGTAGGACGCGGGA
aCCGCACTTgAAGGGGGAGGCGCGGGGTACCGGtCCGGGAACGTACGGGTACCGGCGGGG
gAGGGGAGGGGGACCgCTCCGGGAAGGCCAGGGGACGGATTGGGGAAGGgCGGGTACCGA
AGCGGGgAAaTGGGggAaCcGGCGAGAGGGTTCCTCGCTAAGTGGGGGAAATaGGGGAAA
GGTTGACCAGTGGTtCCCcGCTCTCGTAACATGCCTCAGATAGCGCCATCCGCTGTACCT
GGtcaggtcGctggcaacttcggccgagcaggtgaacccgaaaggtgagggtcagtgtga
cacaccaaccgaacaccgacgaggcaagcgtaggagccggcgtggccgcgcccggcggcg
ctgaggactcctcg

Код для чтения последовательности можно найти здесь .

Это дает правильный вывод, как показано ниже с разделением табуляции:

contig00001   586   52.38
contig00002   554   62.45

Проблема в том, что я разработал форму в NetBeans, которая состоит из JTable, имеющего 5 столбцов, то есть:

"contigID","Description","Organism","Sequence_length","Gc_percentage" 

и JTextArea.Я хочу отобразить вышеуказанный вывод в столбцах JTable, в то время как другие столбцы остаются пустыми;и когда я нажимаю 'contig00001' в JTable, соответствующая последовательность, например "CGGGAAAT ....", должна отображаться в JTextArea.

Как я могу это сделать?Любое предложение будет оценено.

Ответы [ 2 ]

1 голос
/ 18 июня 2011

Я не совсем уверен, на чем ты застрял. Если он добавляет данные в JTable, я бы рассмотрел создание объекта DefaultTableModel, построение его с правильным заголовком столбца Strings в массиве с 0 строками данных, а затем добавление рядов данных по мере чтения файлов. Учебник JTable должен помочь вам сделать все это. Создав модель таблицы, вы можете легко добавить ее в JTable с помощью метода setModel.

1 голос
/ 18 июня 2011

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

Добавление: при прослушивании выбрав пользователь , вы можете определить, какая строка была выбрана, и соответственно обновить JTextArea.

Приложение: поскольку получение данных может быть продолжительным, SwingWorker предлагаетбезопасный способ мутировать TableModel.Вот простой пример .

...