所以我正在开发一些基本上是Java编码教程的作业。这些任务不是为了我只是试图用Java编写自己的代码。手头的任务是调用文件名但不对其进行硬编码。传入的名称应该是一个参数。我到目前为止的代码是:
import java.util.*;
import java.io.*;
public class Music
{
private String songTitle;
private String albumName;
private String artistName;
private int releaseYear;
static String[] arrayTitles=new String[12];
public static void main(String[] args)
{
try
{
String path=args[0];
File music=new File(path);
Scanner readLibrary=new Scanner(music);
int numberOfTitles=readLibrary.nextInt();
System.out.println(numberOfTitles);
}
catch (FileNotFoundException e)
{
System.out.println("ERROR!");
System.exit(0);
}
}
我在哪里 String path = args [0]; 是我收到错误的地方。 我可以简单地把文件名“music.txt”和程序工作。所以我只是试图让这个代码适用于任何文件输入。 文件music.txt已经在我的工作区中。 我正在使用Eclipse。
答案 0 :(得分:1)
这种情况正在发生,因为args[0]
为空。你没有从命令行盯着你的java程序。如果你希望args[0]
不为null,那么在命令行中使用这行代码:
java Music music.txt
希望它有所帮助。
答案 1 :(得分:1)
在日食中你应该去:
运行>运行配置> Java应用程序> "选择你的主要课程" >转到标签"参数" >在"纲要参数"您可以根据需要定义路径
答案 2 :(得分:1)
我不确定您的练习分配的规则是什么,但为了避免必须从命令行运行程序并帮助保持在IDE的范围内,您可以提示用户输入文件名或路径并将其作为变量传递。这应该适用于任何文件名,但是让用户有责任确切地知道他们正在寻找什么(您可能会想到一种避免的方法)。
希望有所帮助!