我无法找到部分文字。我尝试使用indexOf,但它没有任何帮助,因为它只是将所有内容复制到新文件。 我想用“.com.jp”复制不同的行并将它们写入新文件 这是我的代码
if(string.indexOf(".com.jp") > -1)
{
bufferedWriter.write(string);
bufferedWriter.write("\t");
System.out.println(string);
}
答案 0 :(得分:1)
您可以使用Scanner
按网址阅读String
网址,并过滤您想要的网址:
final Scanner scan = new Scanner(string);
scan.useDelimiter("\t");
while (scan.hasNext()) {
final String url = scan.next();
if (url.contains(".com.jp")) {
bufferedWriter.write(url);
bufferedWriter.write("\t");
System.out.println(url);
}
}
或者,如果您不想使用Scanner
,还可以split()
String
:
while((string = bufferedReader.readLine()) != null) {
for (String url: string.split("\t")) {
if(url.contains(".com.jp")) {
bufferedWriter.write(url);
bufferedWriter.write("\t");
System.out.println(url);
}
}
bufferedWriter.write("\n");
}
答案 1 :(得分:0)
让我们看看,基本的想法就是这个。
string
总是拿着一切。
bufferedWriter.write(string);
你的代码中你在哪里改变string
var?
当你转到下一行时,你需要一些循环来清除变量。
答案 2 :(得分:0)
为此目的使用java会使其变得复杂。 一个简单的unix命令应该这样做:
grep -i '.com.jp' filename.txt > newfile.txt