我正在使用J2me,ASP和WML创建移动网站。
我从数据库中读取并创建了一个字符串,因此我可以稍后调用它。
string id = reader[0].ToString();
string name = reader[1].ToString();
Response.Write("#" + name + id);
在J2me中的我记得它是
stringItem3.setText("Welcome "+result.substring(result.indexOf("#")+1)
+ "ID " + result.substring(result.indexOf("#")+2));
并且结果不是我想要的,我试图用语法改变很多,但没有运气。
结果始终显示为
虽然我真正希望展示的是
Welcome (name) ID : (id)
or
Welcome Arin ID : 20111
获得正确结果的最佳方法是什么?
以后我可以将id值保存在J2me中的字符串中以便以后使用吗(是/否)?
我改变了字符串(已解决)
string id = reader[0].ToString();
string name = reader[1].ToString();
Response.Write("*"+ id + "#" + name);
获取信息时
stringItem3.setText("Welcome "+result.substring(result.indexOf("#")+1)
+ "ID " + result.substring(result.indexOf("*")+1,result.indexOf("#")));
result.substring(result.indexOf("*")+1,result.indexOf("#")));
这意味着获得“*”和“#”之间的字符
现在结果很好,如下图所示。
答案 0 :(得分:2)
您要保存的字符串看起来像#Arin20111
,因此indexOf("#")+2
是#
之后的2 nd 字符。
因此result.substring(result.indexOf("#")+1)
是#
之后的整个字符串,即和 ID。 result.substring(result.indexOf("#")+1)
除了开头的A
之外是相同的字符串。
如果您知道该名称永远不会包含#
,则可以将该字符串存储为#Arin#20111
。然后,名称就是<sup>st</sup>
#and before the 2<sup>nd</sup>
#, and the ID is everything after the 2<sup>nd</sup>
#`之后的所有内容。