我刚刚学习了Java的Scanner类,现在我想知道它如何与StringTokenizer和String.Split进行比较/竞争.我知道StringTokenizer和String.Split只适用于字符串,那么为什么我要将扫描器用于字符串呢?Scanner只是打算一站式购物吗?
我有一个名为log.txt的文本文件它有以下数据
1,,Mon May 05 00:05:45 WST 2014,textFiles/a.txt,images/download.jpg
2,,Mon May 05 00:05:45 WST 2014,textFiles/a.txt,images/download.jpg
Run Code Online (Sandbox Code Playgroud)
第一个逗号之前的数字是指定每个项目的索引.
我想要做的是读取文件然后用另一个值替换给定行中的字符串的一部分(例如textFiles/a.txt)(例如/ something/bob.txt).
这就是我到目前为止所拥有的
File log= new File("log.txt");
String search = "1,,Mon May 05 00:05:45 WST 2014,textFiles/a.txt,images/download.jpg;
//file reading
FileReader fr = new FileReader(log);
String s;
try (BufferedReader br = new BufferedReader(fr)) {
while ((s = br.readLine()) != null) {
if (s.equals(search)) {
//not sure what to do here
}
}
}
Run Code Online (Sandbox Code Playgroud)