Java导入导出csv格式文件完整版详解
在Java中,导入和导出CSV文件通常涉及到读取和写入文件。以下是一个简单的例子,展示了如何使用Java进行CSV文件的导入和导出操作。
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Arrays;
public class CSVHandler {
public static void exportCSV(String[][] data, String filePath) throws IOException {
try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
for (String[] row : data) {
String csvRow = String.join(",", row);
writer.write(csvRow);
writer.newLine();
}
}
}
public static String[][] importCSV(String filePath) throws IOException {
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
String[][] data = new String[10][]; // 假设最多10行
int rowIndex = 0;
while ((line = reader.readLine()) != null) {
String[] rowData = line.split(",");
data[rowIndex++] = rowData;
}
return Arrays.copyOf(data, rowIndex); // 返回实际数据
}
}
public static void main(String[] args) {
String filePath = "data.csv";
String[][] data = {
{"Name", "Age", "Country"},
{"Alice", "30", "USA"},
{"Bob", "25", "UK"}
};
try {
// 导出CSV
exportCSV(data, filePath);
// 导入CSV
data = importCSV(filePath);
for (String[] row : data) {
System.out.println(Arrays.toString(row));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
这段代码提供了exportCSV
方法用于将二维字符串数组写入CSV文件,以及importCSV
方法用于从CSV文件读取数据并返回二维字符串数组。main
方法展示了如何使用这些方法进行数据的导入和导出。
注意:
- 文件路径(
filePath
)应根据实际情况进行修改。 - 这个例子假设CSV文件的每一行有固定数量的列,并且没有包含任何包含逗号的数据。在实际应用中,可能需要更复杂的解析逻辑来正确处理包含逗号的数据字段。
评论已关闭