首先,你需要创建一个 JTable 对象,并在表格中输入数据。例如:
String[] columnNames = {"Name", "Age", "Gender"}Object[][] data = {{"Alice", 20, "Female"}, {"Bob", 25, "Male"}}JTable table = new JTable(data, columnNames)
然后,你需要使用 I/O 类库中的文件操作方法,将表格中的数据保存到文件中。例如,你可以使用 FileWriter 类来写入文件:
FileWriter writer = new FileWriter("table.txt")for (int i = 0i <table.getRowCount()i++) {for (int j = 0j <table.getColumnCount()j++) {
writer.write(table.getValueAt(i, j).toString())
writer.write("\t")
}
writer.write("\n")
}
writer.close()
上面的代码会将表格中的数据写入文件 "table.txt" 中,每行数据之间用制表符隔开,每列数据之间用换行符隔开。
注意,在使用文件操作方法时,你需要处理文件读写可能出现的异常。你可以使用 try-catch 语句将文件操作代码包装起来,以便在发生异常时能够正确处理。
这是一个简单的例子,你可以根据自己的需求来调整代码。例如,你可以使用其他的 I/O 类,比如 BufferedWriter 或 PrintWriter 等,来更方便地写入文件。你还可以使用其他的文件格式,比如 CSV、Excel 等,来保存数据。
用java输出数据库表 示例:import java.awt.BorderLayout
import java.awt.Color
import java.awt.Font
import java.beans.Statement
import java.sql.Connection
import java.sql.DriverManager
import java.sql.ResultSet
import java.sql.SQLException
import java.util.Vector
import javax.swing.JButton
import javax.swing.JFrame
import javax.swing.JScrollPane
import javax.swing.JTable
public class Stmessege1 extends JFrame {
private static final long serialVersionUID = 1L
private JTable table// 声明表格
void Stmessege11() {
setSize(460, 320)
setVisible(true)
}
public Vector getDataVector() throws SQLException, ClassNotFoundException {
Connection conn = null
java.sql.Statement stmt = null
Class.forName("com.mysql.jdbc.Driver")
String dburl = "jdbc:mysql://localhost:3306/hp"
String dbuser = "root"
String dbpassword = "19920102"
conn = DriverManager.getConnection(dburl, dbuser, dbpassword)
stmt = conn.createStatement()
String sql = "select* from xsgli"
ResultSet rs = stmt.executeQuery(sql)
Vector dataVector = new Vector()
while (rs.next()) {
Vector rowVector = new Vector()
for (int i = 1i <= 7i++) {
if (i == 2 || i == 4) {
rowVector.add(String.valueOf(rs.getInt(i)))
} else {
rowVector.add(rs.getString(i))
}
}
dataVector.add(rowVector)
}
return dataVector
}
public Vector getColumnVector() {
Vector columnVector = new Vector()
columnVector.add("姓名")
columnVector.add("学号")
columnVector.add("性别")
columnVector.add("班级")
columnVector.add("系别")
columnVector.add("成绩")
columnVector.add("专业")
return columnVector
}
public Stmessege1() throws SQLException, ClassNotFoundException {
super()
setTitle("学生学籍数据显示")
setBounds(100, 100, 382, 223)
// setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
Connection conn = null
Statement stmt = null
Class.forName("com.mysql.jdbc.Driver")
String dburl = "jdbc:mysql://localhost:3306/hp"
String dbuser = "root"
String dbpassword = "19920102"
conn = DriverManager.getConnection(dburl, dbuser, dbpassword)
java.sql.Statement st = conn.createStatement()
String sql = "select* from xsgli"
ResultSet rs = st.executeQuery(sql)
Vector columnVector = getColumnVector()
Vector dataVector = getDataVector()
final JScrollPane scrollPane = new JScrollPane()
getContentPane().add(scrollPane, BorderLayout.CENTER)
table = new JTable(dataVector, columnVector)
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF)
scrollPane.setViewportView(table)
}
}