0

テキストファイルn.txtに整数があり、2列の整数で、列は空白で区切られています。

これらの整数を読み取り、その間のスペースをエスケープして、これら 2 つの整数を 2 つの別々の整数に入力したいと考えています。以下のコードは、String取得した を解析するために使用されます。String代わりに、を分割しStringて配列を分離し、空のスペースを区切り文字として使用できる方法があるかどうかを知りたかったのですか?

String URL="C:\\User\\Nimit\\Desktop\\n.txt";
File f = new File(URL);
FileReader inputF = new FileReader(f);
BufferedReader in = new BufferedReader(inputF);

int[] a= new int [1000];
int[] b= new int [1000];

String s =in.readLine();

while(s!=null)
{
    int i = 0;
    a[i] = Integer.parseInt(s,b[i]); //this is line 19

    //*not important*// System.out.println(a[i]);
    s = in.readLine(); 
}

in.close();

System.out.println("the output of the file is " +f);
4

4 に答える 4

4

を使用することをお勧めしますScanner

Scanner s = new Scanner(new File(fileName));

int[] a = new int[1000];
int[] b = new int[1000];

int count = 0;
while (s.hasNextInt()) {
    a[count] = s.nextInt();
    b[count] = s.nextInt();
    count++;
}

s.close();
于 2012-06-08T10:52:31.823 に答える
0
int i=0;
s = in.readLine(); 
while(s!=null && i<1000) // your arrays can only hold 1000 ints
{
   String pair[] = s.split(" ");
   a[i] = Integer.parseInt(pair[0]);
   b[i] = Integer.parseInt(pair[1]);
   i++; // don't forget to increment
   s = in.readLine(); 
}

このようなもの。

于 2012-06-08T10:50:35.910 に答える
0

クラスのユーザーsplit()メソッド。StringString arr[]="A B C".split(" ");

PS: あなたが言ったので、ここに初心者向けのヒントがあります。最初に Google を使用してください。ほとんどの場合、ここに質問を投稿するよりもずっと早く回答が見つかります。Java-doc を読んでください。ほとんどの回答がそこにあるからです。グーグルする前にざっと目を通してから、ここまたは他のフォーラムに来て質問してください.

于 2012-06-08T10:41:38.973 に答える
0

http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.htmlのような質問がある場合は、まずドキュメントを読む必要があり ます。

あなたが探しているように見えるのは String.Split() http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#split(java.lang.String )です

于 2012-06-08T10:42:05.663 に答える