查找部分文本并写入另一个文件

时间:2014-03-11 01:56:22

标签: java text

我无法找到部分文字。我尝试使用indexOf,但它没有任何帮助,因为它只是将所有内容复制到新文件。 我想用“.com.jp”复制不同的行并将它们写入新文件 这是我的代码

if(string.indexOf(".com.jp") > -1)
{
    bufferedWriter.write(string);
    bufferedWriter.write("\t");
    System.out.println(string);
}

3 个答案:

答案 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