将CSV文件的每1000行拆分成一个XML文件可以通过以下步骤实现:
以下是一个示例代码,演示了如何使用Java将CSV文件的每1000行拆分成一个XML文件:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class CSVtoXMLConverter {
private static final int LINES_PER_XML = 1000;
public static void main(String[] args) {
String csvFilePath = "input.csv";
String xmlFilePathPrefix = "output";
try (BufferedReader br = new BufferedReader(new FileReader(csvFilePath))) {
String line;
int lineCount = 0;
int fileCount = 1;
List<String> lines = new ArrayList<>();
while ((line = br.readLine()) != null) {
lines.add(line);
lineCount++;
if (lineCount == LINES_PER_XML) {
createXMLFile(xmlFilePathPrefix + fileCount + ".xml", lines);
lines.clear();
lineCount = 0;
fileCount++;
}
}
// Create XML file for remaining lines
if (!lines.isEmpty()) {
createXMLFile(xmlFilePathPrefix + fileCount + ".xml", lines);
}
System.out.println("CSV to XML conversion completed.");
} catch (IOException e) {
e.printStackTrace();
}
}
private static void createXMLFile(String xmlFilePath, List<String> lines) {
try (FileWriter writer = new FileWriter(xmlFilePath)) {
writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
writer.write("<data>\n");
for (String line : lines) {
String[] fields = line.split(",");
writer.write(" <record>\n");
writer.write(" <field1>" + fields[0] + "</field1>\n");
writer.write(" <field2>" + fields[1] + "</field2>\n");
// Add more fields as needed
writer.write(" </record>\n");
}
writer.write("</data>");
} catch (IOException e) {
e.printStackTrace();
}
}
}
这个示例代码将CSV文件的每1000行数据拆分成一个XML文件,并按照每个字段的顺序将数据写入XML文件中。你可以根据实际需求修改代码中的文件路径、XML结构和字段处理逻辑。
腾讯云相关产品和产品介绍链接地址:
请注意,以上链接仅供参考,具体产品选择应根据实际需求进行评估和决策。
领取专属 10元无门槛券
手把手带您无忧上云