C言語には、strtoken関数がありずいぶんお世話になりました。
JDK1.5からは、Scannerクラスが便利です。
strtoken関数と同じ機能(入力文字列の単語の切り出し、区切り文字の指定)に加えて、型変換もやってくれます。
例えば、1行目がデータ数、2行目移行が幅、高さ、データをデータを読み取るとします。
3 5,6,12=E4D9HIF8=GN576LOABMTPKQSR0J 6,5,238=I67E9MBC1AF05HJKRLNGPDQSTO 4,6,94827601A3BCD5JGMEFNHLKI
次のように書くことができます。
区切り文字を適切に指定すれば、数値は、数値として、文字は文字列として切り出されます。(うーん、便利)
public static void main( String[] args ) throws FileNotFoundException { Scanner scan = new Scanner(new File(args[0])); int n = scan.nextInt(); String delim = scan.delimiter().pattern() + "|,"; scan.useDelimiter(delim); for (int i=0; i < n; i++) { System.out.println(String.format("%d, %d, %s", scan.nextInt(), scan.nextInt(), scan.next())); } }