2016-04-26 5 views
1

文字列を2つの別々の文字列に分割しようとしています.1つは最初の文字からタブまで、もう1つはタブの後から文字列の最後までです。私はthis postを見て、別の私の問題を発見した。私は現在、split()メソッドを利用しようとしていますが、運がありません。次のように私のコードは次のとおりです。タブでJavaの文字列を分割する

 Scanner loadFile = new Scanner(System.in); 
     loadFile = new Scanner(menuFile); 

     //loops through data and adds into the SSST 
     while(loadFile.hasNextLine()){ 
      String line = loadFile.nextLine(); 

      String[] thisLine = line.split(" "); 

      System.out.println(thisLine[0]); 
      String item = thisLine[0]; 
      String value = thisLine[1]; 

      menu.put(item, value); 

私は文字列にタブで分割するためにこの方法を提供する引数を知らないので、私はラインline.split(" ");で私の問題に遭遇します。このコードの

menuは別個のオブジェクトであり、無関係です。このプログラムの

サンプル入力:このプログラムの

"baguette   400" 

所望の出力:

String 1: "baguette" 

String 2: "400" 
+5

タブ文字は '\ t'と書かれています。 – qqilihq

+0

空白文字 '" "を使用しています。これはタブ文字' \ t "とは異なります。 – Kon

答えて

5

タブ文字が\t書かれています。ご使用のケースのために可能であれば、より柔軟な

String[] thisLine = line.split("\t"); 

:ので、スペースやタブを使用\\sを含む一般的な空白文字、(上の分割については、二重の逆スラッシュを入力してくださいので、行を分割するためのコードは次のようになりますこれは正規表現です)。

+0

これは多くの助けになります。ありがとうございました! –

関連する問題