public static List<ArrayList<Double>> getCenters(String inputpath){
        List<ArrayList<Double>> result = new ArrayList<ArrayList<Double>>();
        Configuration conf = new Configuration();
        try {
            FileSystem hdfs = FileSystem.get(conf);
            Path in = new Path(inputpath);
            FSDataInputStream fsIn = hdfs.open(in);
            LineReader lineIn = new LineReader(fsIn, conf);
            Text line = new Text();
            while (lineIn.readLine(line) > 0){
                String record = line.toString();
                /*
				因为Hadoop输出键值对时会在键跟值之间添加制表符，
				所以用空格代替之。
                */
                String[] fields = record.replace("\t", " ").split(" ");
                List<Double> tmplist = new ArrayList<Double>();
                for (int i = 0; i < fields.length; ++i){
                    tmplist.add(Double.parseDouble(fields[i]));
                }
                result.add((ArrayList<Double>) tmplist);
            }
            fsIn.close();
        } catch (IOException e){
            e.printStackTrace();
        }
        return result;
    }