如何把文本文件中的数据读到一个二维数组中

怎么把文本文件中的数据读到一个二维数组中?
例如文本中的数据中这样的:
Bone DHODH
Bone XYLT1
Cancer DHFR
Cancer PIK3CA
Cancer PIK3CA
Cancer B4GALT1
Cancer ALG1
我现在要把这个文本文件中的数据读到二维数组String[][] a=new String[7][2]中,就是下面这样
a[0][0]=Bone,a[0][1]=DHODH
a[1][0]=Bone,a[1][1]=XYLT1
应该怎么写程序呢?高手们帮帮忙~~~~谢谢了~~~~

------解决方案--------------------
不太难,主要是这个文件如果是动态的,那么你的一开始不能直接定义为固定数组,否则行数不可预知。

ArrayList lst = new ArrayList();
Scanner sc = new Scanner(new File("文件路径名称"));
while (sc.hasNext()) {
String[] tmp = new String[2];
tmp[0]=sc.next();
tmp[1]=sc.next();
lst.add(tmp);
}

------解决方案--------------------
保险起见可以这样(当然如果文件格式固定就无所谓)
Java code
List<String[]> list = new ArrayList<String>();
Scanner sc = new Scanner(new FileInputStream("文件路径名称"));
while (sc.hasNextLine()) {
    list.add(sc.nextLine().split("\\s+"));
}
sc.close();
String[][] data = list.toArray(String[][]{});