//ReadFile_01.java import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.UnsupportedEncodingException; import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; class ReadFile_01 { public static String[][] toStringArray2D( File inputFile, String encoding, String delimiters ){ String[][] array2D = null; ArrayList list = fileToList(inputFile, encoding); if(list!=null){ array2D = new String[list.size()][]; for(int i=0; i< list.size(); i++){ array2D[i] = list.get(i).split(delimiters); } }else{ return null; } return array2D; } private static ArrayList fileToList( File inputFile, String encoding ){ ArrayList list = null; //try-catch の外で宣言。 try { //ここは慣用句です。 BufferedReader br = new BufferedReader( new InputStreamReader( new FileInputStream(inputFile), encoding ) ); //list に書き出します。 list = new ArrayList(); String strLine; while((strLine = br.readLine()) != null) { list.add(strLine); } br.close(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e){ e.printStackTrace(); } return list; } }