gpt4 book ai didi

java - Eclipse插件: Finding line numbers containing a substring not working

转载 作者:行者123 更新时间:2023-12-02 06:10:52 24 4
gpt4 key购买 nike

我使用以下函数来查找所有以 word 作为子字符串的行号。

    public ArrayList<Integer> find(String word, File text) throws IOException {
LineNumberReader rdr = new LineNumberReader(new FileReader(text));
ArrayList<Integer> results = new ArrayList<Integer>();
try {
String line = rdr.readLine();
if (line.contains(word)) {
results.add(rdr.getLineNumber());
}
} finally {
rdr.close();
}
return results;
}

但是,当我如下调用上述函数时,我得到的 lineNumberList 的大小为 0(假设该文件至少包含一次 word 作为子字符串)

IProject project = (IProject)((IAdaptable)firstElement).getAdapter(IProject.class);
IFile manifest = project.getFile("AndroidManifest.xml");
File manifestfile = manifest.getRawLocation().makeAbsolute().toFile();
ArrayList<Integer> lineNumberList = new ArrayList<Integer>();
lineNumberList = find(PermissionInfo[0].trim(), manifestfile);

最佳答案

循环遍历项目,即

public ArrayList<Integer> find(String word, File text) throws IOException {
LineNumberReader rdr = new LineNumberReader(new FileReader(text));
ArrayList<Integer> results = new ArrayList<Integer>();
try {
String line = rdr.readLine();
while(line != null){
if (line.contains(word)) {
results.add(rdr.getLineNumber());
}
line = rdr.readLine();
}
} finally {
rdr.close();
}
return results;
}

关于java - Eclipse插件: Finding line numbers containing a substring not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21898123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com