Javaでよくわからないエラーが出てしまいます。
こんにちは。
Javaでプログラムを作っている途中で
ArrayIndexOutOfBoundsException
というエラーが出てきました。
調べてみると"配列として確保された領域を 超えた場所アクセスした場合に発生"と書かれていました。
しかし、エラーの部分を見つけることができません。
以下に問題のプログラムを掲載します,問題点を指摘してもらいたいのです。
よろしくお願いします。
ちなみに開発環境はJava7です。
-------------以下プログラム-------------
import java.io.*;
public class Datain{
public static String[][] datain(){
String inputFileName;
String indata_1;
String[] indata_2 = new String[12];
String[][] mondata = new String[100][12];
int i = 0;
//読み込むファイル名
inputFileName = "H:\\問題データ.txt";
//ファイルオブジェクトの生成
File inputFile = new File(inputFileName);
try{
//入力ストリームの生成
FileInputStream fis = new FileInputStream(inputFile);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
//テキストファイルからの読み込み
while((indata_1 = br.readLine()) != null){
indata_2 = indata_1.split(",");
for(int z = 0;z < indata_2.length;z++){
mondata[i][z] = indata_2[z];
}
i++;
}
br.close();
}catch(Exception e){
e.printStackTrace();
}
return mondata;
}
public static void main(String[] args){
String[][] a;
a = datain();
System.out.println(a[0][0]);
}
}
-------------テキストファイル-------------
あいう,えおか,きくけ
こさし,すせそ,たちつ
てとな,にぬね,のはひ
※カンマ区切りの「.txt」ファイル
補足
>>new はメモリ領域の確保じゃなくて、インスタンス(オブジェクト)の生成です。 インスタンスの生成=メモリ領域の確保ではないのですか?