0

このコードは、double値をdouble[]の形式でファイルに保存できる部分です。保存した値を使って線グラフを描きたい。'double[]'形式である必要があります。保存された値「doublelist」を読み取るにはどうすればよいですか?

-これは私が修正した新しいコードです。「double[]value =(double [])ois.readObject();」にエラーがあります。ライン。「ローカル変数値が重複しています」と表示されます

public static double[] getValue(){
    FileInputStream fis = null;
    ObjectInputStream ois = null;
    List<Double> newList = new ArrayList<Double>();
    double[] value;
    try {
        fis = new FileInputStream("user_data.txt");
        ois = new ObjectInputStream(fis);

       double[] value = (double[]) ois.readObject();

    } catch (Exception ex) {

        try {
            fis.close();
            ois.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return value;
}
4

1 に答える 1

0

in getDoubles() change:

newList = (ArrayList<Double>) ois.readObject();

to

double[] doubles = (double[]) ois.readObject();
newList = new ArrayList<Double>(doubles.length);
for (Double d : doubles) {
    newList.add(d);
}

The main problem here is that there isn't a very convenient way to convert and array of primitives (double in this case) into an array of objects (Double in this case).

于 2012-06-21T11:06:56.913 に答える