我是Java编程的新手。我使用java为我的模拟工具编写简单的宏。 在代码的以下部分中,我想在csv文件中找到最小值和最大值,该文件是“空白”分隔。
现在,我遇到的问题是我在输出窗口上收到了java.lang.NullPointerException消息。比它说宏观播放已经完成。
我在代码中有一些标记,输出结束于此位置。
有没有人知道为什么这不起作用?
public void VelMinandMax (String Velocity_Data) {
velMagMax = 0.0 ;
velMagMin = 100.0 ;
FileReader fr1 = null ;
BufferedReader br1 = null ;
Scanner sc1 = null ;
try {
fr1 = new FileReader(Velocity_Data);
br1 = new BufferedReader(fr1);
sc1 = new Scanner(br1);
while (sc1.hasNextLine()) {
sc1.nextLine();
if (sc1.hasNextDouble()) {
double velMag = sc1.nextDouble();
double coordX = sc1.nextDouble();
double coordY = sc1.nextDouble();
double coordZ = sc1.nextDouble();
if (velMag>velMagMax)
{
velMagMax = velMag ;
}
if (velMag<velMagMin)
{
velMagMin = velMag ;
}
}
}
}
catch (FileNotFoundException e) {
System.out.println ("Error : File Not Found") ;
}
finally {
sc1.close() ;
try {
br1.close() ;
fr1.close() ;
}
catch (IOException e2) {
System.out.println ("IOException");
}
}
}
编辑 输出:
公共执行 MethodVol CalcVelRef VelMinandMax 显示java.lang.NullPointerException
答案 0 :(得分:0)
你不能在变量 Velocity_Data 中传递null吗?这是唯一可以触发NPE(恕我直言)的地方。