★★ Java の宿題ここで答えます Part 68 ★★at TECH
★★ Java の宿題ここで答えます Part 68 ★★ - 暇つぶし2ch688:デフォルトの名無しさん
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){} }
みたいな感じでどうだろうか


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch