繁体   English   中英

使用biojava将文本文件读取到JTable的特定列的步骤

[英]Steps to read the text file into specific columns of JTable using biojava

这是一个典型的输入.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中开发了一个由具有5列的JTable组成的表单,即:

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

和一个JTextArea 我想在JTable列中显示上面的输出,而其他列保持为空; 当我点击JTable 'contig00001'时,应该在JTextArea显示类似“CGGGAAAT ....”的序列。

我怎样才能做到这一点? 任何建议将不胜感激。

一种方法是扩展AbstractTableModel ,如创建表模型中所述

附录:通过监听用户选择 ,您可以确定选择了哪一行并相应地更新您的JTextArea

附录:由于数据检索可能会受到影响,因此SwingWorker提供了一种安全的方法来改变TableModel 这是一个简单的例子

我不确定你坚持的是什么。 如果它正在向JTable添加数据,我会考虑创建一个DefaultTableModel对象,使用数组中正确的列标题字符串构造它,包含0行数据,然后在读取文件时添加数据行。 JTable教程应该可以帮助您完成所有这些工作。 创建表模型后,可以通过setModel方法轻松将其添加到JTable中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM