Java 如何在我的项目中找到寻址/访问文件系统的每一段代码?
我需要在代码(Java项目)中找到它以某种方式处理文件系统的每个地方(例如,创建文件、读取文件、获取目录文件列表等) 进行这种类型的搜索最常见的模式是什么? 怎样才能不错过什么Java 如何在我的项目中找到寻址/访问文件系统的每一段代码?,java,file,intellij-idea,design-patterns,file-io,Java,File,Intellij Idea,Design Patterns,File Io,我需要在代码(Java项目)中找到它以某种方式处理文件系统的每个地方(例如,创建文件、读取文件、获取目录文件列表等) 进行这种类型的搜索最常见的模式是什么? 怎样才能不错过什么 另外,我对访问文件系统的模式的存在感兴趣。我是否需要通过一个特定的实用程序(提供者、管理者、控制器…)类进行访问 这个问题可能太宽泛了,事先道歉。可能有用。如果右键单击软件包,然后选择“查找用法” 然后,您将能够自定义搜索条件,以包括类和接口的用法 和取消选择显示导入语句(我们不需要它们!) 在我的例子中,它产生
另外,我对访问文件系统的模式的存在感兴趣。我是否需要通过一个特定的实用程序(提供者、管理者、控制器…)类进行访问
这个问题可能太宽泛了,事先道歉。可能有用。如果右键单击
软件包
,然后选择“查找用法”
然后,您将能够自定义搜索条件,以包括类和接口的用法
和取消选择显示导入语句(我们不需要它们!)
在我的例子中,它产生了这个结果
您可以从java.nio
中看到所有class
es'和interface
s'用法我认为这是目前最好的,至少没有第三方工具。首先,这个问题与设计模式无关
- 设计模式与设计应用程序的过程相关
- 您似乎在询问如何分析已经编写的代码库
假设您实际询问进行此类分析的方法:
- 一个好的IDE将为查找引用特定类的位置提供便利。因此,您可以确定感兴趣的类(在
、java.io
等中),并系统地查看它们在代码中引用的所有位置java.nio
- 在Linux、Unix和Mac上,是像
这样的文本工具,可以与grep
结合使用,以筛选代码库。例如,搜索find
语句import
但是,在代码库中找不到“与文件系统相关的任何东西”,也没有从代码的执行方式中推断出一个或多个模式的魔弹。(好吧)这很大程度上取决于你。你认为Intellij的想法目前就足够了吗?@LppEdd,我不知道,但你似乎会在这一点上争论。很抱歉,我模棱两可,但我确实想把我问题的两个方面结合在一起。因此,由于主要问题是“如何找到代码中的所有位置”,我还想知道,是否有访问磁盘系统的最佳设计。您知道访问文件系统的设计模式吗?可能是访问者模式。但是,更好的方法是简单地使用java.io、nio、nio2等实现/支持的模式,例如,
Files.walk
或Files.walkFileTree
。