Java Scanner class reads one line and then stops -


i have problem method using scanner class. reading text file scanner , parse int array.

public static void readitems()  {     try      {         file file = new file(system.getproperty("user.home") + "./ssgame/item.dat");         scanner scanner = new scanner(file);         int line = 0;         while (scanner.hasnextline())         {             string text = scanner.nextline();             text = text.replaceall("\\w", "");             system.out.println(text.trim());             playerinstance.playeritems[line] = integer.parseint(text);             line++;         }         scanner.close();     } catch (filenotfoundexception e)      {         e.printstacktrace();     } catch (numberformatexception e2)     {         e2.printstacktrace();     } } 

heres item.txt file:

1 1 2 3 4 

i run code , following output:

1 

i have tried using scanner.hasnextint() , scaner.nextint(); won't print @ all.

if remove parseint part file finish reading , numbers printed. ideas?

this exception thrown:

java.lang.numberformatexception: input string: "" @ java.lang.numberformatexception.forinputstring(unknown source) @ java.lang.integer.parseint(unknown source) @ java.lang.integer.parseint(unknown source) @ game.player.readplayer.readitems(readplayer.java:56) @ game.player.readplayer.read(readplayer.java:11) @ game.frame.<init>(frame.java:32) @ game.frame.main(frame.java:54) 

i'm guessing integer.parseint() throwing numberformatexception because line still contains \n.

if call integer.parseint(text.trim()) instead, may fix it.

if did exception handling properly, have better idea.


Comments

Popular posts from this blog

matlab - Deleting rows with specific rules -

php - MySQLi multi_query results for later use -