从文件中删除所有 java 关键字

问题描述

我正在执行一个项目,我需要从 java 文件删除所有 java 关键字。首先,我创建一个 keyword.java 文件并将所有 java 关键字存储到这个文件中。像 abstract continue for new switch assert default goto package 等我存储了 keyword.java 文件我有一个名为 newFile.java 的文件,我将 newFile.java 中的所有数据作为字符串读取。我必须从 newFile.java 文件删除所有 java 关键字。据我尝试:

   public void processFile() throws IOException {
    String data = "";
    data = new String(Files.readAllBytes(Paths.get("H:\\java\\Clone\\newFile.java"))).trim();
    String rmvPunctuation = removePunctuation(data);
    String newLineRemove = rmvPunctuation.replace("\n","").replace("\r","");
    String spaceRemove = newLineRemove.replaceAll("( ){2,}"," ");     
    removeKeyword(spaceRemove);}


 public void removeKeyword(String fileAsstring) throws FileNotFoundException,IOException {
    ArrayList<String> keyWordList = new ArrayList<>();
    ArrayList<String> methodContentList = new ArrayList<>();
    FileInputStream fis = new FileInputStream("H:\\java\\keyword.java");
    byte[] b = new byte[fis.available()];
    fis.read(b);
    String[] keyword = new String(b).trim().split(" ");
    String newString = "";
    for (int i = 0; i < keyword.length; i++) {
        keyWordList.add(keyword[i].trim());

    }
    String[] p = fileAsstring.split(" ");
    for (int i = 0; i < p.length; i++) {
        if (!(keyWordList.contains(p[i].trim()))) {
            newString = newString + p[i] + " ";
        }
    }
    System.out.println("" + newString);
}

但是我找不到我想要的输出。不会从 newFile.java 文件删除所有 java 关键字。我认为 StackOverflow 社区帮助我解决了这个问题。我也是初学者。

我也试过:

  public void removeKeyword(String fileAsstring) throws IOException {
    String keyWord = new String(Files.readAllBytes(Paths.get("H:\\java\\keyword.java"))).trim();
    String text = fileAsstring.trim();
    ArrayList<String> wordList = new ArrayList<>();
    ArrayList<String> keyWordList = new ArrayList<>();
    wordList.addAll(Arrays.asList(text.split(" ")));
    keyWordList.addAll(Arrays.asList(keyWord.split(" ")));    
     wordList.removeAll(keyWordList);
    System.out.println("" + wordList.toString());

}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)