結合されたテキストファイルを分割しようとしています。結合されたテキストファイルには複数のxmlファイルがあります。私は<?xml version='1.0'?>
に分割して、結合されたテキストファイル内のすべての新しいxmlの先頭にしたいと思います。これを行うための最良の方法は何か分かりません。現在、これは正しく分割されていないものです。結合されたXML文字列分割Java
更新されたコードの作業(引用符の問題で一定の引用はPattern.quoteを追加しました):あなたは、有効な正規表現に、あなたの区切り文字String
をエスケープすることもできますので、
Scanner scanner = new Scanner(new File("src/main/resources/Flume_Sample"), "UTF-8");
String combinedText = scanner.useDelimiter("\\A").next();
scanner.close(); // Put this call in a finally block
String delimiter = "<?xml version=\"1.0\"?>";
String[] xmlFiles = combinedText.split("(?="+Pattern.quote(delimiter)+")");
for (int i = 0; i < xmlFiles.length; i++){
File file = new File("src/main/resources/output_"+i);
FileWriter writer = new FileWriter(file);
writer.write(xmlFiles[i]);
System.out.println(xmlFiles[i]);
writer.close();
}