【问题标题】:Why does File related stuff not Work? (Java)为什么文件相关的东西不起作用? (爪哇)
【发布时间】:2020-08-24 05:39:02
【问题描述】:

我目前正在编写一个程序,该程序涉及在该文件夹中创建一个文件夹和一个文件。 第一个版本有效,之后我决定创建一个新项目以使代码具有清晰的形式。 现在,突然创建文件的类将不再工作。我用第二个项目切换了设备。

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();
            }
        }
    }
}

【问题讨论】:

    标签: java file java-io


    【解决方案1】:

    您应该以不同的方式命名您的班级。将您的类命名为 File 让 java 使用它而不是 java.io.File,因此找不到方法 exists(以及其他方法),因为不在您的类中。

    【讨论】:

    • 非常感谢。我还是 Java 新手,只在学校学习 c,而我所在的公司也不会帮助我。 (虽然那是他们在学徒期间的任务..)我非常感谢我至少在这里得到了一些帮助,即使这是我的一个愚蠢的错误..
    • @AMIIGAF 顺便说一句,这是不使用 * 导入的一个很好的理由;冲突更难被发现。
    【解决方案2】:

    您的类名和导入类具有相同的名称File,因此编译器检查您的File 类而不是java.io.File 他应该的一个。

    如果两个类具有相同的名称,请使用 java.io.Fileyour.File 而不是仅使用 File

    【讨论】:

      【解决方案3】:

      你的两个班级同名。尝试将类 File 命名为 java.io.File 。 它应该可以正常工作

      【讨论】:

        【解决方案4】:

        您可以使用完全限定名称

        java.io.File folder1 = new java.io.File("Data");
        java.io.File file1 = new java.io.File("Data/MonData.txt"); 
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-06-29
          • 2017-04-04
          • 1970-01-01
          • 1970-01-01
          • 2011-09-19
          • 2014-03-15
          • 1970-01-01
          相关资源
          最近更新 更多