0

こんにちは、テキスト ファイル入力で値を取得して配列に格納し、それらの値を使用可能なデータに解析してから、それらの値を新しい配列に格納しようとしています。ファイルを読み取っていますが、何らかの理由で値に正しくアクセスできないようです。値を解析したり要素を削除したりしようとしましたが、変更された配列を印刷しても出力に何も変更されていないようです。

どの部分がおかしいのか教えてください

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.List;


public class dataminingp1 
{

    String[] data = new String[100];
    String line;

    public void readf() throws IOException 
    {

        FileReader fr = new FileReader("C:\\input.txt");
        BufferedReader br = new BufferedReader(fr);

        int i = 0;
        while ((line = br.readLine()) != null) 
        {
            data[i] = line;
            System.out.println(data[i]);
            i++;
        }
        br.close();
        System.out.println("Data length: "+data.length);

        String[][] root;

        List<String> lines = Files.readAllLines(Paths.get("input.txt"), StandardCharsets.UTF_8);

        root = new String[lines.size()][];

        lines.removeAll(Arrays.asList("", null)); // <- remove empty lines

        for(int a =0; a<lines.size(); a++)
        {
            root[a] = lines.get(a).split(" ");
        }
        lines.get(0).replace(',', ' ');
        //int p = Integer.parseInt(root[0][0]);
        System.out.println(lines.get(0));
        //System.out.println(p);

    }

    public static void main(String[] args) throws IOException 
    {
        dataminingp1 sarray = new dataminingp1();
        sarray.readf();
    }   
}

あなたが与えるどんな助けのためにも、すべての情報源を含めてください。よろしくお願いします。ほんとうにありがとう。

4

1 に答える 1

3

StringJavaでは不変であるため、文字列を変更した後、変更を元に戻す必要があります。

String changedLine = lines.get(0).replace(',', ' '); // Assign the modified String returned by replace method to changedLine
lines.set(0, changedLine); // Set the 0th index in the lines with the changedLine
于 2013-10-15T05:30:30.500 に答える