Lire un fichier séparé par un onglet et placer les mots dans une liste de tableaux

Je suis en train de faire un auto-apprentissage de l'exercice pour m'aider à comprendre plus au sujet de Java, mais je suis bloqué à cette question. J'ai le texte suivant d'un fichier txt:

Name  Hobby 
Susy  eat fish 
Anna  gardening
Billy bowling with friends

Remarque: nom et passe-temps sont séparés par une tabulation

Quelle est la meilleure façon de lire toute la ligne et le mettre dans arraylist(nom,passe-temps). La partie délicate est que

eat fish or bowling with friends

a espaces et, il faut le mettre sous un tableau et évidemment je ne peux pas coder en dur. Voici mon code actuel:

 public void openFile(){
            try{
                FileInputStream fstream = new    FileInputStream("textfile.txt");
          //use DataInputStream to read binary NOT text
          BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
          ArrayList<String> names = new ArrayList<String>();
          ArrayList<String> hobbies = new ArrayList<String>();
          String lineJustFetched;
          while ((lineJustFetched = br.readLine()) != null)   {
          String[] tokens = lineJustFetched.split(" \t");

J'ai une erreur:

java.lang.StringIndexOutOfBoundsException: String index out of range:
-1

Je soupçonne le comptage de l'index n'est pas très utile sur un onglet.
Une idée?

source d'informationauteur user2891092