質問するログイン新規登録

回答編集履歴

1

改版

2019/01/28 14:25

投稿

thkana
thkana

スコア7738

answer CHANGED
@@ -1,9 +1,13 @@
1
- いまスマホなの試せないのでが、
1
+ 一応確認して、全面改版です
2
2
 
3
- `tbl.findRows(" red( c ) ",1)`ってのは、まさに" red( c ) "という文字列を探すもので、"123"とはマッチしないと思うのですがどうでしょう?
3
+ `tbl.findRows(" red( c ) ",1)`ってのは、まさに" red( c ) "という文字列を探すことにりますから、数字とはマッチしません。
4
- `String key=String.format("%d",red(c));`
4
+ 数字との一致を調べたいのですから、数値を文字列に変換してからTable::findRows()に(Javaってクラス表記どうするんだっけ?)渡す必要があります。
5
+ しかも、CSVの記述と文字列としての比較になりますから、CSVが整数なら整数、小数点以下があるならその分まで一致させないと検出できません。例えば100と100.0は別物と判断される、ということ。
6
+
5
- 、簡単には
7
+ CSVが整数で書れているなら例えば
6
- `String key=""+red(c);`
8
+ `String searchKey=""+(int)red(c);`
7
- に対して
9
+ とか、
10
+ `String searchKey=Integer.toString((int)red(c));`
11
+ で整数にしてから文字列に変換したうえで
8
- `tbl.findRows(key,1)`
12
+ `tbl.findRows(searchKey, 1)`
9
- などするところではないか
13
+ として与えます