2011-06-18 65 views
0

下面是一個典型的輸入.txt文件(也稱爲FASTA文件)讀取文本文件到JTable中的特定列:步驟使用biojava

 
>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 

代碼來讀取序列可發現here

它給正確的輸出,與標籤分離 - 如下所示:

contig00001 586 52.38 
contig00002 554 62.45 

的問題是,我公司開發的形式在NetBeans,其由具有5列的JTable的,即:

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

JTextArea。我想在JTable列中顯示上述輸出,而其他列保持空白;當我點擊JTable中的'contig00001'時,應該在JTextArea中顯示相應的序列,如「CGGGAAAT ....」。

我該怎麼做?任何建議,將不勝感激。

+1

你能告訴我,你究竟粘在了什麼*正確*我在上面的代碼片段中看不到任何Swing/JTable或表格模型代碼。 –

+0

這似乎與此處的作業分配相同:http://stackoverflow.com/questions/6214468/how-to-read-the-given-text-file –

回答

1

一種方法是擴展AbstractTableModel,如Creating a Table Model中所述。

附錄:通過收聽user selection,您可以確定選擇了哪一行,並相應地更新您的JTextArea

附錄:由於數據檢索可prtotracted,SwingWorker提供了一個安全的方式變異的TableModel。這是一個簡單的example

1

我不完全確定你卡在什麼。如果它將數據添加到JTable,我會考慮創建一個DefaultTableModel對象,使用正確的列標題Strings在數組中創建一個DefaultTableModel對象,其中包含0行數據,然後在讀取文件時添加數據行。 JTable教程應該可以幫助你做到這一切。一旦創建了表模型,就可以通過setModel方法輕鬆地將其添加到JTable中。

+0

對於DefaultTableModel爲+1。因爲這些文件可以_huge_,我很警惕;但批量進入'JTextArea'。 – trashgod

+0

@trashgod:謝謝,我已經爲您的AbstractTableModel和用戶選擇信息添加了1 +'d。儘管OP在他卡住的地方仍然沒有任何消息。 –