Java帮助,错误消息;“未找到文件”;

Java帮助,错误消息;“未找到文件”;,java,Java,我正在试着运行这段代码,这段代码本来应该是老师简单的剪切粘贴作业。但是,按照说明操作后,我仍然收到以下错误消息: 找不到指定的文件ShapeData.txt 这又回到了第30行 我确实将文件剪切并粘贴到了与其他文件相同的文件夹中,所以我不确定为什么仍然会出现错误。我还阅读了有关在命令行中执行某些操作的内容,但不确定我应该执行什么操作 (哦,这不是家庭作业,也不是我可以交分数的任何东西。这只是我们可以看一下以便更好地理解的东西。) 这是我的代码,或者至少是第一行代码 /** * Concepts

我正在试着运行这段代码,这段代码本来应该是老师简单的剪切粘贴作业。但是,按照说明操作后,我仍然收到以下错误消息:

找不到指定的文件ShapeData.txt

这又回到了第30行

我确实将文件剪切并粘贴到了与其他文件相同的文件夹中,所以我不确定为什么仍然会出现错误。我还阅读了有关在命令行中执行某些操作的内容,但不确定我应该执行什么操作

(哦,这不是家庭作业,也不是我可以交分数的任何东西。这只是我们可以看一下以便更好地理解的东西。)

这是我的代码,或者至少是第一行代码

/**
 * Concepts demonstrated:
 *  Object Inheritance
 *  Interfaces
 *  Interface Implementation
 *  Reading Data from a File
 *  Sorting an Array
 *  Manipulating Strings 
 */

import java.util.Scanner;

    /**
     * This lab demonstrates the basics of object-oriented programming.
     */
    public class Lab8 {

        private static Shape[] shapes; // An array to hold all the shape objects

        public static void main(String[] args) {
            DataReader reader = new DataReader("ShapeData.txt");// The reader is used to read data from a file


            // Display program information
            System.out.println("Ima Java Programmer");
            System.out.println("Shape Info");

            // Load data from the file
            if(reader.loadData("ShapeData.txt")) { // The filename is entered using a command-line argument
                shapes = reader.getShapeData(); // Store the arrays in the array

                // Display how many shapes were read from the file
                System.out.println("Successfully loaded " + shapes[0].getCount() + 
                                   " shapes from the selected data file!");
                displayMenu();
            }
        }
您需要提供ShapeData.txt的完整路径(假设ShapeData.txt不在Java进程的工作目录中)


您需要提供ShapeData.txt的完整路径(假设ShapeData.txt不在Java进程的工作目录中)。

ShapeData.txt文件必须在您的工作目录中,因为此处未指定完整路径。工作目录可能是您的java bin目录

ShapeData.txt文件必须在您的工作目录
中,因为此处未指定完整路径。工作目录可能是您的java bin目录

您可以在ant构建文件中添加文件的路径,以便通过以下方式将其复制到工作目录中:

<copy todir="/path/to/copy" overwrite="false">
    <fileset dir="/source/path" />
</copy>

您可以在ant build文件中添加文件路径,以便通过以下方式将其复制到工作目录中:

<copy todir="/path/to/copy" overwrite="false">
    <fileset dir="/source/path" />
</copy>

这是完全错误的。如果没有指定完整路径,将文件放在(我想你是说Java)bin目录中无法加载。是的,文件需要放在Java进程的工作目录中,而不是bin目录中。谢谢,我使用了大家提供的一点信息,并解决了这个问题,谢谢,我不得不将ShapeData.txt文件从我的类文件中移出,这是不正确的。如果没有指定完整路径,将文件放在(我想你是说Java)bin目录中无法加载。是的,文件需要放在Java进程的工作目录中,而不是bin目录中。谢谢,我使用了大家提供的一点信息,并解决了这个问题,谢谢,我不得不将ShapeData.txt文件从我的类文件中移出,如果您更正
假设ShapeData.txt与您的类文件不在同一文件夹中,wowI将进行升级投票)。
。该文件需要位于Java进程的工作目录中,不管是什么(将根据JVM的启动方式而有所不同)。@Perception:有意义,更改了单词。谢谢,我从每个人那里用了一点,并找到了答案,谢谢我不得不将ShapeData.txt文件从我的类文件中移出,如果您更正
,假设ShapeData.txt与类文件不在同一文件夹中,wowI将向上投票。
。该文件需要位于Java进程的工作目录中,不管是什么(将根据JVM的启动方式而有所不同)。@Perception:有意义,更改了单词。谢谢,我从每个人那里用了一点,并找到了答案,谢谢,我不得不将ShapeData.txt文件移出我的类文件,哇
File file = new File("filename");
DataReader reader = new DataReader(file.getAbsolutePath());