直接点击拉进去就OK了,要注意一个显示表头的小技巧:
1,先创建一个JScollPanel,将JTable放在Panel里,这样会显示表头
2使用getTableHeader()方法获得表头(在JScollPanel外显示)
blic static void main(String[] args) throws BiffException,IOException,WriteException {try {
InputStream is = new FileInputStream("F:/EXCEL/ZY_T_D_DRIVERINCOME.xls")
jxl.Workbook rwb = Workbook.getWorkbook(is)
System.out.println(rwb)
Sheet[] rsArray = rwb.getSheets()
Sheet rs = rsArray[0]
Cell c
for(int i=0i<rs.getRows()i++){
for(int j=0j<rs.getColumns()j++){
c=rs.getCell(j,i)
String strc = c.getContents()
System.out.print(strc)
rwb.close()
}
}
} catch (Exception e) {
e.printStackTrace()
}
}
将取到的数据可以先组装成List类型数据,然后再写,或者直接写入数据库,数据库应该有对应的字段
效果图
面板中放入2个表格, 可以有多种实现方式, 比如表格布局1行2列, 或者绝对布局
我使用JSplitPane 分割面板来实现
参考代码如下
import java.util.Arraysimport java.util.Vector
import javax.swing.BorderFactory
import javax.swing.JFrame
import javax.swing.JScrollPane
import javax.swing.JSplitPane
import javax.swing.JTable
import javax.swing.table.DefaultTableModel
public class FrameDemo extends JFrame {
public FrameDemo() {
JSplitPane jsp = new JSplitPane()
jsp.setOrientation(JSplitPane.HORIZONTAL_SPLIT)// 设置分割线方向
// 表格数据模型
DefaultTableModel model = new DefaultTableModel()
model.addColumn("姓名", new Vector<String>())
model.addColumn("分数", new Vector<Integer>())
JTable t1 = new JTable(model)// 创建表格,并添加模型
JScrollPane jp1 = new JScrollPane(t1)
jp1.setBorder(BorderFactory.createTitledBorder("无数据表格"))// 设置标题边框
jsp.setLeftComponent(jp1)
DefaultTableModel model2 = new DefaultTableModel()
model2.addColumn("姓名", new Vector<String>(Arrays.asList("张三", "李四", "王五")))
model2.addColumn("分数", new Vector<Integer>(Arrays.asList(90, 87, 65)))
JTable t2 = new JTable(model2)
JScrollPane jp2 = new JScrollPane(t2)
jp2.setBorder(BorderFactory.createTitledBorder("有数据表格"))
jsp.setRightComponent(jp2)
add(jsp)
setTitle("测试窗口")
setDefaultCloseOperation(EXIT_ON_CLOSE)
setSize(400, 300)
setLocationRelativeTo(null)
setVisible(true)
jsp.setDividerLocation(0.5)// 分隔面板 平均分配
}
public static void main(String[] args) {
new FrameDemo()
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)