Java 多输入文件的HTML解析器
我想一次选择多个html文件,并使用html解析器仅提取文本,每个html文件将生成一个单独的文本文件。任何人都可以为此推荐java代码Java 多输入文件的HTML解析器,java,javascript,html,oracle,parsing,Java,Javascript,Html,Oracle,Parsing,我想一次选择多个html文件,并使用html解析器仅提取文本,每个html文件将生成一个单独的文本文件。任何人都可以为此推荐java代码 `FileReader f0 = new FileReader("j.html"); StringBuilder sb = new StringBuilder(); BufferedReader br = new BufferedReader(f0); while((temp1=br.readLine())!=null) { sb.append(temp
`FileReader f0 = new FileReader("j.html");
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(f0);
while((temp1=br.readLine())!=null)
{ sb.append(temp1); }
String para = sb.toString().replaceAll("<br>","\n");
String textonly = Jsoup.parse(para).text();
System.out.println(textonly);
FileWriter f1=new FileWriter("j.txt");
char buf1[] = new char[textonly.length()];
textonly.getChars(0,textonly.length(),buf1,0);
for(i=0;i<buf1.length;i++) {
if(buf1[i]=='\n')
f1.write("\r\n");
f1.write(buf1[i]);
}`
`FileReader f0=新的FileReader(“j.html”);
StringBuilder sb=新的StringBuilder();
BufferedReader br=新的BufferedReader(f0);
而((temp1=br.readLine())!=null)
{sb.append(temp1);}
字符串para=sb.toString().replaceAll(“
”,“\n”);
String textonly=Jsoup.parse(para.text();
System.out.println(仅限文本);
FileWriter f1=新的FileWriter(“j.txt”);
char buf1[]=新字符[textonly.length()];
getChars(0,textonly.length(),buf1,0);
对于(i=0;i您不能将代码放入循环中吗?类似于(未测试):
//在要更改的文件上循环
对于(int i=1;i<1000;i++){
FileReader f0=新的FileReader(i+“.html”);
StringBuilder sb=新的StringBuilder();
BufferedReader br=新的BufferedReader(f0);
而((temp1=br.readLine())!=null){
某人(临时工1);
}
字符串para=sb.toString().replaceAll(“
”,“\n”);
String textonly=Jsoup.parse(para.text();
System.out.println(仅限文本);
//将.txt粘贴在文件名的末尾以进行写入
FileWriter f1=新的FileWriter(i+“.txt”);
char buf1[]=新字符[textonly.length()];
getChars(0,textonly.length(),buf1,0);
for(i=0;icheck@Disko 3)感谢这个有价值的建议。但是我有2000个文件,我给了它们从1到2000的编号名称为“1.html”。所以我想给for类似循环的(i=1;iCode改为这样做。它只是使用简单的字符串处理来构造文件名,所以你可能想了解一下。是的。我有了解决方案…thanx@Disko 3
// loop over files you want to change
for (int i = 1; i < 1000; i++) {
FileReader f0 = new FileReader(i + ".html");
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(f0);
while((temp1=br.readLine())!=null) {
sb.append(temp1);
}
String para = sb.toString().replaceAll("<br>","\n");
String textonly = Jsoup.parse(para).text();
System.out.println(textonly);
// stick .txt on the end of the filename to write out
FileWriter f1=new FileWriter(i + ".txt");
char buf1[] = new char[textonly.length()];
textonly.getChars(0,textonly.length(),buf1,0);
for(i=0;i<buf1.length;i++) {
if(buf1[i]=='\n') {
f1.write("\r\n");
}
f1.write(buf1[i]);
}