09/12/30 01:39:25
>>686
説明不足、不明瞭でよく解らないが
例えばファイルの最初の行に書かれたカンマで区切られた整数を読み込みint配列にするなら
int[] array;
FileReader fr = null;
try{
BufferedReader br = new BufferedReader(fr = new FileReader(file));
String line = br.readLine().trim(); // 前後の空白文字を除いた一行を取得
int begin=0,end; // 文字列内の値部分の開始位置,終端位置
ArrayList<Integer> vec = new ArrayList<Integer>();
while( (end=line.indexOf(',',begin)) != -1 || // 次のカンマ場所を調べる
begin < line.length() ){ // 最後の','より後ろに値が文字がある
if(end == -1)end = line.length(); // 最後のカンマの後ろの文字部分
try{
vec.add(new Integer(line.substring(begin,end).trim())); // 文字列の一部を取り出して、Integerのオブジェクトにする
}catch(Exception e){vec.add(new Integer(0));} // 整数じゃなかったら0とする
begin = end+1; // beginにカンマの次の位置を代入
}
array = new int[vec.size()]; // 配列
for(int i=array.length;i--!=0;)array[i] = vec. get(i).intValue(); // intにして配列に代入
}catch(IOException e){ array = null; } // ファイルが存在しないなど
finally{ try{ if(fr != null)fr.close(); }catch(Exception e){} }
みたいな感じでどうだろうか