我正在使用Eclipse。我想从目录中读取XML文件的数量。每个XML文件都包含多个body标记。我想提取所有body标签的值。我的问题是我必须将每个正文标记值(文本)保存在单独的.txt文件中,并将这些文本文件添加到另一个给定目录中。你可以帮助我如何创建动态的.txt文件并将它们添加到指定的目录中? 提前谢谢。
答案 0 :(得分:15)
首先指定目录路径和名称
File dir=new File("Path to base dir");
if(!dir.exists){
dir.mkdir();}
//然后生成文件名
String fileName="generate required fileName";
File tagFile=new File(dir,fileName+".txt");
if(!tagFile.exists()){
tagFile.createNewFile();
}
答案 1 :(得分:2)
为java.io.File添加导入;
File f;
f=new File("myfile.txt");
if(!f.exists()){
f.createNewFile();
将“myfile.txt”替换为您需要的文件路径,并在您说出时创建文件 例如“C:\\ somedir \\ yourfile.txt”
答案 2 :(得分:1)
做这样的事情。
try {
//Specify directory
String directory = //TODO....
//Specify filename
String filename= //TODO....
// Create file
FileWriter fstream = new FileWriter(directory+filename+".txt");
BufferedWriter out = new BufferedWriter(fstream);
//insert your xml content here
out.write("your xml content");
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
} finally {
//Close the output stream
out.close();
}
答案 3 :(得分:1)
目前尚不清楚为什么提到XML部分。但似乎您可以从XML文件中获取文本并希望写入单独的文本文件。
请仔细阅读这个用Java创建,阅读和编写文件的基础教程:http://download.oracle.com/javase/tutorial/essential/io/file.html
Path logfile = ...;
//Convert the string to a byte array.
String s = ...;
byte data[] = s.getBytes();
OutputStream out = null;
try {
out = new BufferedOutputStream(logfile.newOutputStream(CREATE, APPEND));
...
out.write(data, 0, data.length);
} catch (IOException x) {
System.err.println(x);
} finally {
if (out != null) {
out.flush();
out.close();
}
}