嗯,就是这样! 我需要将字符串文本(如“Hrd $ 457”)转换为long值。 黑莓IDE有一个按钮,但我需要通过代码执行此操作。 请注意,该字符串是字母数字。
THX!
注意: 对不起,如果我的问题不是很清楚。我正在谈论的IDE按钮将整个字符串转换为一个long值,使该字符串成为唯一的数字。 BlackBerry文档说:
“要创建唯一的长密钥,请在BlackBerry®IntegratedDevelopment Environment中键入字符串值。 com.rim.samples.docs.userinfo 右键单击该字符串,然后单击“将com.rim.samples.docs.userinfo”转换为long。“
所以,我需要通过代码完全相同。
我真的很感谢你们的帮助伙伴们,非常感谢你们提供帮助。
答案 0 :(得分:5)
如果您只是为字符串寻找数字常量,则可以执行以下操作。
String str = "asdfasdf345asdfasdf";
int asInt = str.hashCode();
long asLong = (long) asInt;
答案 1 :(得分:2)
以长整数形式返回SHA1摘要的前8个字节。通过突出显示字符串,右键单击并从上下文菜单中选择“转换为'到长”,可以使用BlackBerry JDE以交互方式获得相同的结果。
long net.rim.device.api.util.StringUtilities.stringHashToLong(String key)
答案 2 :(得分:0)
不确定我是否完全掌握了你的例子,但这是怎么回事?
String match = Pattern.compile("\\d+").matcher("Hrd$457").group();
long longValue = Long.parseLong(match).longValue();
答案 3 :(得分:0)
这是另一种方法。如果有多个数字,您可以使用扫描仪遍历字符串。
Scanner scanner = new Scanner(str);
scanner.useDelimiter("\\D+");
Long number = scanner.nextLong();