gpt4 book ai didi

java - 拉取子字符串结果为 Nullpointer

转载 作者:行者123 更新时间:2023-12-02 03:01:13 24 4
gpt4 key购买 nike

我被分配了一个项目,我必须在java中创建一个登录系统,使用filein将帐户写入数组,并通过确认输入用户名与中的用户名相同来使用该数组进行登录数组。我的用户名和密码位于正在读取的 .txt 文件中的同一行,因此我尝试将子字符串从字符串的开头拉到第一个空格,当用户输入位于:

编辑:当尝试隔离时,我以某种方式修复了它。当重新添加 infile 和数组时,会再次导致错误。

编辑:我添加了一个 accountCounter,以便它只循环与不为空的数组值一样多的次数。不幸的是我仍然遇到错误。

java.lang.NullPointerException
at zamp.main(zamp.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at edu.rice.cs.drjava.model.compiler.JavacCompiler.runCommand(JavacCompiler.java:272)

在尝试获取子字符串(打印它,将其委托(delegate)给单独的字符串)的所有情况下,都会导致这种情况。

这是我的代码!

import java.io.*;
import java.util.Scanner;
//import java.net.*; //handles the network protocols

public class zamp {

public static void main(String[] args) throws IOException {

Scanner yiff = new Scanner(System.in);
BufferedReader infile = new BufferedReader (new FileReader("passwords.txt"));


String searchuser;
int f;
int i;
int accountnumber=0;
String modernPass="i";
String[] accounts = new String[5];
String searchpass;
String line = infile.readLine();

for(i=1; i<11; i++){
if (line!=null) {
accounts[i]=line;
System.out.println(""+accounts[i]);
line=infile.readLine();
accountnumber++;


}
}



System.out.println("Enter your username.");
searchuser=yiff.nextLine();
for (f=0; f<(accountnumber); f++) {
modernPass=(""+(accounts[f].substring(0, ((accounts[f].indexOf(" "))))));

if (searchuser.equals(modernPass)) {

System.out.println("Enter your password.");

searchpass=yiff.nextLine();
}

else {
}
}
}}

passwords.txt

user1 password1
user2 password2

我确信解决方案非常简单!

再次感谢您提供的任何帮助,真诚地感谢学生的截止日期为 3 小时。

最佳答案

您超出了数组范围。

尝试重写

for (f=0; f<=(accounts.length); f++)

作为

for (f=0; f<(accounts.length); f++)

关于java - 拉取子字符串结果为 Nullpointer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24318137/

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