Я новичок в программировании, пожалуйста, помогите мне в этом сценарии. Я пытаюсь разработать код для программыкак разбить 100 строк в xml-файле, который имеет n количество строк и добавить его в подфайлы с помощью java
У меня есть xml-файлы, которые содержат X количество строк, и мне нужно поместить первые 100 строк этого файла в другой подфайл и рядом с другим подфайлом и так далее до конца. именовании должно быть как file1, file2, ....
Входные файлы будут 5000, 10000 или даже больше линий
мне нужен динамический код для этого сценария с помощью DOM парсер
я разработал код для файла с постоянными строками.
import java.io.*;
public class splitting
{
public static void main(String args[])throws Exception
{
int count = 0;
BufferedReader br = null;
FileWriter fileWriter1 = new FileWriter("C:\\senderoutput1.txt");
FileWriter fileWriter2 = new FileWriter("C:\\senderoutput2.txt");
FileWriter fileWriter3 = new FileWriter("C:\\senderoutput3.txt");
FileWriter fileWriter4 = new FileWriter("C:\\senderoutput4.txt");
try {
String currentLine;
br = new BufferedReader(new FileReader("C:\\senderinput.txt"));
while ((currentLine = br.readLine()) != null)
{
count++;
if (count <= 100)
{
fileWriter1.write(currentLine + System.getProperty("line.separator", "\r\n"));
} else if (count > 100 && count <= 200)
{
fileWriter2.write(currentLine + System.getProperty("line.separator", "\r\n"));
}else if (count > 200 && count <= 300)
{
fileWriter3.write(currentLine + System.getProperty("line.separator", "\r\n"));
}else if (count > 300 && count <= 400)
{
fileWriter4.write(currentLine + System.getProperty("line.separator", "\r\n"));
}
}
} finally
{
if (br != null)
{
br.close();
}
fileWriter1.close();
fileWriter2.close();
fileWriter3.close();
fileWriter4.close();
System.out.println("File Splitting was successful!!!");
}
}
}
Этот код предназначен для файла 400 линий.
как это сделать для n количества строк?
Неправильное разделение XML-файла таким образом, это хорошо. Полученные файлы будут недействительными (XML). Может быть, пример XML-содержимого поможет здесь, и вы можете использовать StAX для этого. –