问题描述
我当前正在编写一个程序,该程序涉及在该文件夹中创建文件夹和文件。 第一个版本有效,之后我决定创建一个新项目,使代码清晰易懂。 现在,突然之间创建文件的类不再起作用。我在第二个项目中切换了设备。
package com.company;
import java.io.*;
public class File {
File folder1 = new File("Data");
File file1 = new File("Data/MonData.txt");
//For both "Data" and "Data/MonData.txt it says
//"Expected 0 arguments but found 1"
public void DataText() {
if(folder1.exists()) { //exists = cant
} //resolve method
else {
folder1.mkdirs(); //mkdirs = cant
} //resolve method
if(file1.exists()) { //exists = cant
} //resolve method
else {
try {
file1.createNewFile(); //createNewFile = cant
} //resolve method
catch(IOException e) {
e.printstacktrace();
}
}
}
}
解决方法
您应该以其他方式命名课程。为类File
命名后,让Java代替java.io.File使用它,因此未找到方法exists
(以及其他方法),因为不在您的类中。
您的类名和导入类具有相同的名称File
,因此编译器检查您的File
类,而不是他应该选择的java.io.File
类。
,如果两个类的名称相同,请仅使用
java.io.File
和your.File
代替File
您的两个类都具有相同的名称。尝试将类File
命名为java.io.File
。
应该很好
您可以使用完全限定的名称
java.io.File folder1 = new java.io.File("Data");
java.io.File file1 = new java.io.File("Data/MonData.txt");