所有文章 > API开发 > InterSystems IRIS %Library.Prompt 类终端交互全指南
InterSystems IRIS %Library.Prompt 类终端交互全指南

InterSystems IRIS %Library.Prompt 类终端交互全指南

一. 使用 %Library.Prompt 实现终端交互

你是否曾好奇,像 ^DATABASE 这样的命令是如何在终端中与用户交互的?或者在编写自动化例程时,如何直接从终端获取用户输入?
InterSystems IRIS 提供了强大的 %Library.Prompt 类,帮助开发者轻松实现终端交互功能。


二. 字符串输入

当需要用户输入字符串信息(如文件路径或命名空间)时,可以使用以下方法:

set status = ##class(%Library.Prompt).GetString("Input filepath:", .path)
  • GetString() 会提示用户输入一个字符串。
  • 用户输入的内容将存储在变量 path 中,可用于后续处理。

三. 数字输入

如果需要用户输入数字,例如 CPU 核心数量,可以使用:

set status = ##class(%Library.Prompt).GetNumber("Input number of cores:", .number)
  • %Library.Prompt 会自动验证输入是否为数字。
  • 你还可以限制输入范围,例如:
set status = ##class(%Library.Prompt).GetNumber("Input number of cores (1-8):", .number, 1, 8)
  • 这段代码确保用户输入的数字在 1 到 8 之间,提高了输入安全性。

四. 默认选项

在某些情况下,为用户提供默认选项会更加便捷。例如,设置默认回答为“是”:

set answer = 1
set status = ##class(%Library.Prompt).GetYesNo("Accept default settings?", .answer)
  • 如果用户没有输入,变量 answer 默认值为 1(表示“是”)。
  • 这种方式适用于确认操作或默认配置选择场景。

五. 菜单选择

对于更复杂的交互,例如用户需要从菜单中选择选项,可以使用 GetArray()GetMenu() 方法:

#include %syPrompt
set options(1) = "Option 1"
set options(2) = "Option 2"
do ##class(%Library.Prompt).GetArray("Select deployment type:", .result, .options, , , , $$$InitialDisplayMask)
  • 代码会向用户展示一个选项列表,用户从中选择。
  • $$$InitialDisplayMask 标志用于在用户选择之前显示完整菜单。

六. 总结

通过 %Library.Prompt 类,开发者可以轻松实现终端交互,包括:

  • 字符串输入
  • 数字输入
  • 默认选项
  • 菜单选择

这些方法简化了与用户的交互逻辑,使开发更加高效和直观。
如需深入了解 %Library.Prompt 的更多功能,请参考 InterSystems IRIS 官方文档

原文链接: https://community.intersystems.com/post/using-libraryprompt-iris-terminal-interaction

#你可能也喜欢这些API文章!

我们有何不同?

API服务商零注册

多API并行试用

数据驱动选型,提升决策效率

查看全部API→
🔥

热门场景实测,选对API

#AI文本生成大模型API

对比大模型API的内容创意新颖性、情感共鸣力、商业转化潜力

25个渠道
一键对比试用API 限时免费

#AI深度推理大模型API

对比大模型API的逻辑推理准确性、分析深度、可视化建议合理性

10个渠道
一键对比试用API 限时免费