Java怎么使用表格输入数据并保存为文件?

Python012

Java怎么使用表格输入数据并保存为文件?,第1张

在 Java 中使用表格输入数据并保存为文件,可以使用 Swing 包中的 JTable 组件和 I/O 类库中的文件操作方法。

首先,你需要创建一个 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)

}

}