大家帮忙看一个关于Pattern的问题,昨天帮人写段程序,但出现了这个问题,不知道为什么不能分隔换行和回车。
运行结果为
null/**
* @(#)StringParse.java
*
*
* @author livahu
* @version 1.00 2006/10/24
*/
import java.util.*;
import java.io.*;
import java.util.regex.Pattern;public class StringParse { public StringParse() {
}
public static void main(String[] args) {
try {
Pattern p = Pattern.compile("\n\r");
PrintStream out = new PrintStream("data.txt");
out.println("1Hello efvdfa eefa");
out.println("2dafasdfawe dsfswfw ");
out.println("3df3dfdf3wfewf");
out.println("4dfsa3java");
Scanner sc = new Scanner(new FileInputStream("data.txt")).useDelimiter(p);
HashMap<Integer, String> hm = new HashMap<Integer, String>();
Integer i = 1;
while (sc.hasNext()) {
hm.put(i, sc.next());
i++;
}
System.out.println(hm.get(3));
sc.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
}
运行结果为
null/**
* @(#)StringParse.java
*
*
* @author livahu
* @version 1.00 2006/10/24
*/
import java.util.*;
import java.io.*;
import java.util.regex.Pattern;public class StringParse { public StringParse() {
}
public static void main(String[] args) {
try {
Pattern p = Pattern.compile("\n\r");
PrintStream out = new PrintStream("data.txt");
out.println("1Hello efvdfa eefa");
out.println("2dafasdfawe dsfswfw ");
out.println("3df3dfdf3wfewf");
out.println("4dfsa3java");
Scanner sc = new Scanner(new FileInputStream("data.txt")).useDelimiter(p);
HashMap<Integer, String> hm = new HashMap<Integer, String>();
Integer i = 1;
while (sc.hasNext()) {
hm.put(i, sc.next());
i++;
}
System.out.println(hm.get(3));
sc.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货