如何计算netbeans项目中的行数
-
11-12-2019 - |
题
你好,我有netbeans7,我想知道如何计算项目的总行数。我已经看过谷歌,但每次我这样做,我只发现死胡同或非工作插件。有谁知道如何数线?
其他提示
我知道这是一个非常古老的问题,但是有一种更简单的方法可以在不涉及安装插件的netbeans项目中查找行数:
- 右键单击要查找的文件夹或包的数量
排队
注:不要右键单击项目本身,因为这也会导致它计算所有生成文件中的行。 - 点击
Find
或Find in Files
或按 按CtrlF. - 确保
Match
下拉设置为Regular Expression
. - 输入
\n
进入搜索框。 - 按查找,项目的行数将显示在
Search Results
标签。
注:在NetBeans中,搜索在5000个结果后停止,因此如果您的项目长于该结果,则此方法将不起作用
我希望粘贴粘贴答案。所以我写了一个。
编辑:支持数百万的代码行。不需要外部库。
public static void main(String[] args) throws FileNotFoundException {
final String folderPath = "D:\\Dev\\MYPROJECT\\src";
long totalLineCount = 0;
final List<File> folderList = new LinkedList<>();
folderList.add(new File(folderPath));
while (!folderList.isEmpty()) {
final File folder = folderList.remove(0);
if (folder.isDirectory() && folder.exists()) {
System.out.println("Scanning " + folder.getName());
final File[] fileList = folder.listFiles();
for (final File file : fileList) {
if (file.isDirectory()) {
folderList.add(file);
} else if (file.getName().endsWith(".java")
|| file.getName().endsWith(".sql")) {
long lineCount = 0;
final Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
scanner.nextLine();
lineCount++;
}
totalLineCount += lineCount;
final String lineCountString;
if (lineCount > 99999) {
lineCountString = "" + lineCount;
} else {
final String temp = (" " + lineCount);
lineCountString = temp.substring(temp.length() - 5);
}
System.out.println(lineCountString + " lines in " + file.getName());
}
}
}
}
System.out.println("Scan Complete: " + totalLineCount + " lines total");
}
.
结果类似于以下内容:
(truncated)
47 lines in WarningLevel.java
Scanning design
1367 lines in ProcessResultsFrame.java
83 lines in TableSettingPanel.java
Scanning images
Scanning settingspanel
67 lines in AbstractSettingPanel.java
215 lines in AdvancedSettingsPanel.java
84 lines in BaseSettingsPanel.java
451 lines in DatabasePanel.java
488 lines in EmailPanel.java
458 lines in FTPGUIPanel.java
482 lines in FTPScheduledTaskPanel.java
229 lines in GUISettingPanel.java
87 lines in RootSettingJPanel.java
722 lines in ServerVisualIdentificationSettingPanel.java
Scan Complete: 123685 lines total
.
如果它缺少一些东西,请告诉我,我会尽力纠正它。谢谢!
您可以使用源代码指标用于Java项目。
不隶属于 StackOverflow