现在我尝试编写一个小方法来搜索j2me,它运行良好,但我不知道如何编写像SQL一样的方法在j2me中使用“Like”来搜索记录库不需要匹配100%。
示例
在我的RecordStore中有2条记录
London; Paris; Atlanta;
Paramount; NewYork; Bronx;
当我在TextField字母“o”上键入时,它只显示最后一条记录
Paramount; NewYork; Bronx
虽然第一张唱片也有“伦敦”
我学会了如何用Java2s dot com编写搜索方法
http://www.java2s.com/Tutorial/Java/0430__J2ME/SearchrecordinRecordStore.htm
如何在J2me中使用“赞”?
答案 0 :(得分:1)
(扩展问题评论中讨论的内容)
关于您的一般问题 - 答案是否定的,MIDP 2 API与SQL LIKE没有任何关系。根据RecordStore API,不能使用SQL表达式/语句。
搜索MIDP RecordStore以进行不精确匹配(类似于SQL LIKE
)的方法是使用正则表达式处理记录。请注意,正则表达式反过来也在MIDP 2 API中不可用。
要在MIDP中使用正则表达式,必须为这些代码编写自己的代码,或者更好的是,获取一些执行此操作的库,例如"regexp-me" open source package:
“基于Jakarta Regexp的Java Me(j2me)正则表达式包.Regexp-me兼容CLDC1.0并且支持部分Unicode”。
至于您提到的示例SearchrecordinRecordStore.htm,看起来如果您正确移植它,那么您应该获得“伦敦”。
RecordFilter
传递包含“o”的字符串(不区分大小写),并且如果使用该过滤器枚举记录,则枚举中应该包含“London”。System.out.println
- 这样您不仅可以使用MIDlet UI重新检查输出,还可以在模拟器控制台中重新检查输出。