- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的问题是,简而言之,如何将 File.listFiles() 返回的 File 对象转换为 File 的扩展类?我将返回的对象放入 ArrayList 中。我的第一个想法是将文件对象转换为我的类,Figure.class。
for(final File file : dir.listFiles()) {
fileArrayList.add((Figure) file)
}
这会抛出 java.lang.ClassCastException。然后我想到只在Figure类中封装一个文件。为此,我为每个文件创建了一个新的Figure 对象。这引发了很多与内存相关的错误。
如何使用 File.listFiles() 来使我能够使用自己的 File 类扩展?
最佳答案
您需要创建对象,无法将现有对象转换为另一种类型的对象。因此,如果您的类名为 Figure
,您将需要:
fileArrayList.add(new Figure(file.getAbsolutePath());
或类似的(如 File
没有复制构造函数,但有 constructor accepting a pathname )。
或者为 9000提醒我,您可以让 Figure
接受 File
,然后在调用 super
时使用 getAbsolutePath
(或类似的):
public Figure(File file) {
super(file.getAbsolutePath());
}
这取决于您希望 Figure
有哪些构造函数。
My first thought was to cast the file objects to my class, Figure.class.
请记住,转换只会更改对象的引用类型,而不会更改对象是什么。如果对象不是 Figure
,则转换将会失败(如您所见)。 转换和转换之间的区别是需要理解的一个重要区别。
关于java - 使用带有文件类扩展名的 File.listFiles(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44725179/
当我尝试使用方法 someFile.listFiles(FileFilter foobar) 时,出现错误 The method listFiles(FilenameFilter) in the ty
我曾经从一本关于方法引用的书中读到以下代码。 File[] hiddenFiles = new File(".").listFiles(File::isHidden) 当我从文件 API 查找 lis
这个问题已经有答案了: Listing only files in directory [closed] (3 个回答) 已关闭 5 年前。 我注意到listFiles()方法返回文件和目录,但是我想
作为处理的结果,一些数据文件被写入磁盘。 两台服务器(MAC 和 Linux)匹配的文件数 系统间的文件名相同 文件内容在系统之间是相同的,由 md5sum 衡量 然后根据从所述文件中读取的内容计算报
我编写了以下程序,它读取目录中的所有文件。所有文件名均由数字组成(例如 10023134.txt)。 File dir = new File(directoryPath); File[] files
我正在尝试迭代文件夹 我的文件位于 D:\PROJECT_FOLDER\rootProject\semiRootProject\project\build\resources\main\com\xxx
我使用此代码以递归方式从给定目录获取所有文件。 List fileList = (List) FileUtils.listFiles(new File(directoryName), null , t
import java.io.File; public class FileDemo { public static void main(String[] args) { String sou
我的问题是,简而言之,如何将 File.listFiles() 返回的 File 对象转换为 File 的扩展类?我将返回的对象放入 ArrayList 中。我的第一个想法是将文件对象转换为我的类,F
private static void getFTPFileProperties(FTPClient client, String ftpLocation, String pa
似乎方法 listFiles() 也列出了所有目录并威胁所有结果作为目录。 最佳答案 File Java 中的对象可以表示文件或目录。可以通过isFile()查看是文件还是目录和 isDirector
在我的项目中,我有一个 resources 目录,里面有一个 my_directory。 my_directory 包含文本文件。 我想循环这个目录: URL resource = Resources
我想使用列表文件而不是手动设置对象集合: @Paramaters public static Collection data() { Object[][] data = new Object
所以,我有一个 ListView,它显示特定目录中所有文件的名称。此应用程序还会删除文件并将新文件添加到目录中。 我希望文件按创建顺序显示,但 File(directory).listFiles()
我正在使用 Android Emulator 2.2 版本开发一个小应用程序。我应该列出目录下的所有图像文件(jpg)文件。我通过 ADB puash 命令将文件复制到“/data”。 示例:/dat
有什么方法可以在已打包到 jar 中的目录上使用 listFiles() 吗? 假设我的资源目录中有一个包含一些文本文件的目录:texts/text1.txt 和 texts/text2.txt。 在
我是 hadoop 和其他东西的业余爱好者。现在,我正在尝试访问 hadoop 集群 (HDFS) 并从客户端 eclipse 检索文件列表。我在hadoop java client上设置好需要的配置
我在看这个方法:FileSystem.listFiles(Path f, boolean recursive) List the statuses and block locations of the
在一个文件夹中,我有三个文件 A.txt、B.txt、C.txt。我正在执行下面提到的程序。 for(File a: path.listFiles()){ Sy
File.listFiles() 方法列出文件夹的内容。然而,在 Windows 上,当您在根驱动器上调用该方法时,它还会产生一些 - 缺少更好的短语 - “虚拟”文件夹(如“文档和设置”,在最近的
我是一名优秀的程序员,十分优秀!