0

Javaで2次元配列の位置を取得したいです。

目的: 検証のために CSV ファイルからこの 2 次元配列を取得します。したがって、セルの位置に言及して、どれが無効であるかを特定したいと思います。

例:

    A B C D E  

1   a b c d e

2   f g h i j

3klmno   _

4   p q k r s

上記の入力でコードに「h」を指定すると、C2 が返されます。このための API は非常に役立ちます。

誰でもこれで私を助けてくれますか?

4

2 に答える 2

0

Apache POI は、Excel の操作に役立つはずです

于 2012-11-18T11:30:43.503 に答える
0

より良い結果を得るには、次の方法を使用します。

private static String ConvertColumnNumberToChars( int i ){

if( i < 0 )
throw new UnsupportedOperationException("Converted number must be greater than zero.");

int iBase = 'Z' - 'A'+1;
if( iBase > Character.MAX_RADIX )
throw new UnsupportedOperationException("This JRE can't convert to radix greater than "+Character.MAX_RADIX);

String interConversion = Integer.toString(i-1, iBase).toUpperCase();

//System.out.print("inter: "+ interConversion +";  ");

char[] ac = interConversion.toCharArray();

for( int j = 0; j < ac.length; j++ ) {

int poziceOdzadu = ac.length - j - 1;
char c = ac[j];
ac[j] =  (char) ('A' - poziceOdzadu + Character.digit( c, iBase ));

}
return String.copyValueOf( ac );

}

列名に変更したい int 値をこのメソッドに入力するだけです。

String Value の Row Number+1 は CSV ファイルの Row Number で、ConvertColumnNumberToChars(Number+1) は列の文字名です。

幸運を!

于 2012-11-18T20:10:58.457 に答える