我正在使用 Netbeans IDE (J2ME) 开发移动应用程序,这是一个在用户输入单词时检索单词含义的字典。
如何在应用程序(在 .jar 文件中)任何数据库中保存/检索这些含义?有什么方法吗?我必须分发这个应用程序。
我正在使用 Netbeans IDE (J2ME) 开发移动应用程序,这是一个在用户输入单词时检索单词含义的字典。
如何在应用程序(在 .jar 文件中)任何数据库中保存/检索这些含义?有什么方法吗?我必须分发这个应用程序。
使用 java-me,您可以支持Record Management System (RMS),您可以在那里存储少量数据,
好的方法是存储少量信息,当用户查询该词时,查看它是否在本地 RMS 中,提供它,否则您对服务器进行 Web 服务调用并将信息提供给用户
字典是键/值数据结构,就像哈希表一样。您可以将 jar 文件中的数据存储为 Java 属性文件 (http://docs.oracle.com/javase/tutorial/essential/environment/properties.html)。
由于 Java ME 没有 java.util.Properties 类,您必须手动进行加载。
公共类属性扩展哈希表{
公共属性(输入流输入)抛出 IOException {
如果(在 == 空){
throw new IllegalArgumentException("in == null");
}
StringBuffer line = new StringBuffer();
while (readLine(in, line)) {
字符串 s = line.toString().trim();
if (s.startsWith("#") == false) {
int i = s.indexOf('=');
如果 (i > 0) {
字符串键 = s.substring(0, i).trim();
字符串值 = s.substring(i + 1).trim();
放(键,值);
}
}
line.setLength(0);
}
}
private boolean readLine(InputStream in, StringBuffer line) 抛出 IOException {
int c = in.read();
而 (c != -1 && c != '\n') {
line.append((char)c);
c = in.read();
}
返回 c >= 0 || line.length() > 0;
}
公共字符串获取(字符串键){
return (String) super.get(key);
}
}
这是一个示例
InputStream is = getClass().getResourceAsStream("/dictionary.properties");
属性字典 = new Properties(is);