Witam, mam problem z porównaniem danych. Chce stworzyć program, który zapisana wartość string w pliku tekstowym porówna z wartością danych wpisanych na klawiaturze.
Mój problem widzę w pliku tekstowym gdzie zapisany jest string (znajdują się tam białe znaki, które podczas porównywania metodą
==
są wyłapywane i przykładowa wartośc
"1234 " jest nierówna wpisanej na klawiaturze "1234". Chciałem użyc metody
trim()
ale wyskakuje błąd Exception in thread "main" java.lang.NullPointerException
at Projekt.Sklep.main(Sklep.java:51)
Czy ktoś ma jakikolwiek pomysł jak można to usprawnić?
```java
public class Sklep {
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
String kod;
String line = "";
FileInputStream fin = null;
try{
fin = new FileInputStream("id.txt");
}
catch(FileNotFoundException e){
System.out.println("Brak pliku id.txt");
System.exit(-1);
}
DataInputStream out = new DataInputStream(fin);
BufferedReader inbr = new BufferedReader(new InputStreamReader(fin));
try{
while ((line = inbr.readLine()) != null){
System.out.println(line);
}
}
catch(IOException e){
System.out.println("Blad wejscia-wyjscia");
}
kod= JOptionPane.showInputDialog("Podaj id klienta");
line.trim();
if(kod!=line){
System.out.println("Id jest nieprawidłowy");
kod= JOptionPane.showInputDialog("Podaj własciwe id klienta");
}
if(kod!=line){
System.out.println("Bledne id ");
System.out.println("Skontaktuj się z działem odsługi klienta");
}
else {
System.out.println("Kod pin prawidłowy. Wybierz jedną z opcji.\n");
Będę wdzięczny za każda pomoc. Pozdrawiam