0

我目前正在尝试编写一个程序,该程序可以扫描文本文档并用另一个短语替换指定的单词/字符串/任何内容,特别是使用 Scanner 和 Printwriter 类。不幸的是,我在寻找正确的使用方法以及如何实现它们时遇到了一些麻烦。这是我的代码:

class Redaction {

    public static void main(String[] args) throws FileNotFoundException {
        Scanner input = new Scanner(System.in);

        System.out
                .println("Please enter the filename of the sensitive     information");
        String f = input.next();
        System.out.println("Please input what text you want 'lost'");
        String o = input.next();
        System.out
                .println("Please input what you want the new, improved filename to be called");
        String n = input.next();

        File sensitiveDocument = new File(f);
        if (!sensitiveDocument.exists()) {

            System.out.println("File does not exist.");

            System.exit(0);

        }

        Scanner in = new Scanner(sensitiveDocument);
        in.useDelimiter("[^A-Za-z]+");
        PrintWriter out = new PrintWriter(n);

        while (in.hasNext()) {
            if (in.hasNext(o)) {
                // ...
            }
        }

        in.close();
        out.close();
    }
}

在这一点上我很迷茫。任何帮助将非常感激。

4

2 回答 2

0

首先阅读PrintWriterScanner文档,以决定使用哪些方法。

伪代码:

  1. 逐行获取(或逐字逐句,取决于您要删除的内容)。
  2. 查找要删除的字符串
  3. 如果字符串包含要删除的内容,请将其删除。
  4. 将字符串打印到文件中。
于 2013-04-11T06:23:45.280 回答
0

最简单但效率不高的算法是将文件的内容读入字符串变量。之后,您可以使用 aString Tokenizer查找您不想要的单词并将其替换为您想要的单词,并将变量的内容重写回文件中。

于 2013-04-11T06:23:53.983 回答