christopher: Schwierigkeiten beim parseInt(String) einer Usereingabe

Beitrag lesen

hallo helfer(innen),
ich habe ein kleines problem beim konvertieren eines
strings in einen integer. und zwar möchte ich dem
anwender die möglichkeit einer zahleneingabe geben.
da ich mich mit java noch nicht so recht auskenne habe
ich mir folgenden code teils selbst, teils via copy&paste
zusammengestellt :

---code-auschnit---------------------------
import java.io.*;
public class BSort
{
  public static void main (String [] args)
  {
    int test;
    String tempNo = new String();
    tempNo = einlesen();
    test = Integer.parseInt(tempNo);
                 [^hier meckert er]
  }
  public static String einlesen()
  {
    byte[] Puffer = new byte[50];
    try {
 System.in.read(Puffer,0,50);
    }  catch(java.io.IOException e) {}
    String Variable = new String(Puffer);
    return Variable;
  }
}
---fehlermeldung--------------------------
Exception in thread "main" java.lang.NumberFormatException: For input string: "1
       "
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:435)
        at java.lang.Integer.parseInt(Integer.java:476)
        at BSort.main(BSort.java:14)

ich bekomme stets einen fehler wenn ich versuche den vom
user eingegebenen string in einen integer umzuwandeln.
die eingabe ist eine einfache zahl zwischen 1 und 9.
--

  1. ich wäre euch sehr dankbar wenn mir einer evtl meinen
       denkfehler hinsichtlich des parseInts erklären könnte..
  2. kann/sollte ich nicht auch vielleicht die user-eingabe
       direkt als integer einlesen.. ?

ps: - den tag bis jetzt gegoogelt,
    - selfhtml-archiv-server ist ausgelastet

besten dank für eure hilfen

mfg
christopher