在Visual Prolog中如何将字符串转换为整数?尝试toInt未成功
在Visual Prolog中将EditControl字符串转为整数的解决方法
- 首先要导入包含字符串转换函数的标准模块,Visual Prolog中常用的是
str模块(部分版本对应convert模块)。 - 替换你尝试的
toInt,使用标准库内置的str::toInteger/2函数,它可以将合法的整数字符串转换为整数类型。
示例代码
假设已获取EditControl的文本内容,转换逻辑如下:
% 导入必要模块 include "str.pro" clauses convertEditTextToInt(EditCtrl) = Int :- % 获取EditControl的文本内容 InputStr = EditCtrl:getText(), % 调用字符串转整数函数 str::toInteger(InputStr, Int).
处理转换失败的场景
如果输入字符串不是合法整数(比如包含字母、特殊符号),toInteger会抛出异常。可以用str::toIntegerEx/3函数捕获错误:
clauses convertEditTextToInt(EditCtrl) = Result :- InputStr = EditCtrl:getText(), (str::toIntegerEx(InputStr, Int, _ErrorCode) -> Result = success(Int) ; Result = conversion_failed ).
关于toInt无法启用的说明
Visual Prolog标准库中没有内置toInt/2函数,你可能混淆了其他语言的转换方法。使用上述标准库函数即可完成转换,无需额外"启用"操作,只要确保导入了对应的模块。
内容的提问来源于stack exchange,提问作者Vlad
相关产品推荐
相关产品推荐

