所以基本上说我有一个简单称为设置的文件,但它没有扩展名,但包含重命名的文本文件的数据。 如何将其加载到java中的file()方法中? 简单地使用目录和文件似乎使java认为它只是一个目录而不是文件。
由于
答案 0 :(得分:4)
在Java中,在unix上,甚至在Windows上的文件系统级别上,如果文件有扩展名,则没有区别。
只是Windows资源管理器,也许它在Linux上的吊坠,使用扩展程序显示文件的相应图标,并选择启动文件的应用程序,如果通过双击或类似方式选择它
在文件系统中只有类型化节点,可以有“peter”和“peter.txt”等文件节点,可以有名为“peter”和“peter.txt”的文件夹节点。
因此,总而言之,在Java中,关于扩展的文件处理确实没有区别。
答案 1 :(得分:1)
new File("settings")
应该可以正常工作。 Java不会以不同方式处理带有或不带扩展名的文件。
答案 2 :(得分:1)
Java无法理解文件扩展名,也不会根据文件扩展名或缺少扩展名对文件进行任何不同的处理。如果Java认为File
是一个目录,那么它就是一个目录。我怀疑这不是正在发生的事情。你能试试吗?
File file = new File(filename);
System.out.println('\'' + filename + "'.isDirectory() is "+file.isDirectory());
System.out.println('\'' +filename + "'.isFile() is "+file.isFile());
BTW:在Unix上,文件file.
与file
不同,与FILE
不同。在Windows / MS-DOS上的AFAIK它们被视为相同。
答案 3 :(得分:0)
扩展不应该有所作为。你能把你正在使用的代码发给我们吗?并且错误消息请(堆栈跟踪)。
沿着这些方向做的事情应该起作用(取自http://www.kodejava.org/examples/241.html)
//
// Create an instance of File for data file.
//
File file = new File("data");
try {
//
// Create a new Scanner object which will read the data
// from the file passed in. To check if there are more
// line to read from it we check by calling the
// scanner.hasNextLine() method. We then read line one
// by one till all line is read.
//
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
System.out.println(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}