问题出在哪里?可能的问题已经在注释中标出
代码如下
package test;
import java.io.*;
import java.net.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class email {
public static void main(String[] args) {
String regex="[a-zA-Z_0-9]+@(\\.[a-zA-Z_0-9]{2,3})+";
String s="";
String line=null;
try{
URL url=new URL("http://tieba.baidu.com/p/4232750852");
HttpURLConnection uc=(HttpURLConnection)url.openConnection();
BufferedReader br=new BufferedReader(new InputStreamReader(uc.getInputStream()));
PrintWriter pw=new PrintWriter(new FileWriter("d:\\data.txt"),true);
while((line=br.readLine())!=null){
s=s+line;//如果s用StringBuilder或者StringBuffer代替(s=null)则抛出 NullPointerException
}
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(s);
while(m.find()){
pw.println(m.group());
}
pw.close();
}catch(Exception e){
e.printStackTrace();
}
}
}