gpt4 book ai didi

java - 需要帮助将文件加载到 java 程序中

转载 作者:太空宇宙 更新时间:2023-11-04 06:11:17 30 4
gpt4 key购买 nike

我正在尝试加载名为 Tut16_ReadText.txt 的文件,并使其运行程序以输出其重或轻。

我收到了粘贴在下面的错误。我无法抽出时间让这个程序运行。谁能解释一下我必须做什么才能使这个程序正常工作?

谢谢,

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;


public class test1 {
public static void main(String args[]) throws Exception {
if (args.length != 1) {
System.out.println("usage: Tut16_ReadText file1");

}
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader("F:/Programming/Java/Week16/Tut16_ReadText.txt"));

String sCurrentLine;
int totalwords = 0, totalchar = 0;
while ((sCurrentLine = br.readLine()) != null) {
String words[] = sCurrentLine.split(" ");
totalwords += words.length;
for (int j = 0; j < words.length; j++) {
totalchar += words[j].length();
}
}

double density = (1.0 * totalchar) / totalwords;
if (totalchar > 0) {
System.out.print(args[0] + " : " + density + " : ");
if (density > 6.0)
System.out.println("heavy");
else
System.out.println("light");
} else
System.out.println("This is an error - denisty of zero.");
br.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}

用法:Tut16_ReadText file1线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 0 在 test1.main(test1.java:28)

最佳答案

您正在尝试访问不存在的数组“args”的索引。

这一行:

System.out.print(args[0] + " : " + density + " : ");

正在访问运行程序时需要提供的args[0]。

尝试使用

java test1 yourinputparameter

运行该程序,它应该可以工作。

还有;在程序开头的这些行中:

        if (args.length != 1) {
System.out.println("usage: Tut16_ReadText file1");

}

你应该添加一个

System.exit(0);

这样,如果输入的参数数量不正确,程序的其余部分就不会运行。

关于java - 需要帮助将文件加载到 java 程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28686176/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com