-2

弦を分割したい...最初の5回だけ唾を吐き出し、その後...1つの弦で休む

私はこれを試しました

public class FileRead

{  

  public static void main(String[] args) throws IOException  
    {  

    StringBuffer strBuff = new StringBuffer();  
    String str = null;  

    File file = new File("D:\\wokies\\5_dataset.txt");  
    try {  
    Scanner scanner = new Scanner(file);  
    while (scanner.hasNextLine()) {  
    String line = scanner.nextLine();  
    System.out.println(line);

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


        System.out.println("split happing");
        for (int i = 0 ; i < splitSt.length ; i++) 
        {
            System.out.println(splitSt[i]); 
        }


    }  
    } catch (FileNotFoundException e) {  
    e.printStackTrace();  
    }  
    }  
}
4

4 に答える 4

2

java.lang.String.split(String regex, int limit)制限を受け入れます: 入力をどのくらいの頻度で分割しますか?

制限 n が 0 より大きい場合、パターンは最大で n - 1 回適用され、配列の長さは n 以下になり、配列の最後のエントリには、最後に一致した区切り文字を超えるすべての入力が含まれます。

そう

line.split(" ", 5);

あなたの問題を解決します。

于 2013-10-10T10:28:28.657 に答える
1

limit で split を使用できますsplit(regex, limit)。多分試してみてくださいsplit(" ", 5)。これにより、最大5つの要素を持つ配列が作成され、最後の要素は"a b c d".split(" ", 3)作成されるように分割されません["a", "b", "c d"]

于 2013-10-10T10:29:57.017 に答える
0

splitメソッドはString、「パターンが適用される回数を制御するため、結果の配列の長さに影響する」2 番目のパラメーター「制限」を取ることができます。

電話するだけline.split(" ", 5);

于 2013-10-10T10:29:43.787 に答える