当前位置: 首页 > 知识库问答 >
问题:

Groovy控制台读取输入

麻鹏鹍
2023-03-14

我刚刚开始学习Groovy,正在GroovyConsole中进行实验。

有没有办法读取用户输入?我尝试了下面的代码,但我得到了一个错误。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in))

print "Input:"

input = br.readLine()

println "You entered: $input"

这是我收到的错误:

Exception thrown
17-Apr-2012 02:52:39 org.codehaus.groovy.runtime.StackTraceUtils sanitize

WARNING: Sanitizing stacktrace:

java.io.IOException: Stream closed

有什么我需要进口的吗?

任何帮助都会很好。

谢谢

共有3个答案

楚瑞
2023-03-14

你的代码可以工作。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in))
print "Input:"
def userInput = br.readLine()
println "You entered: $userInput"
曹君墨
2023-03-14
def readln = javax.swing.JOptionPane.&showInputDialog
def username = readln 'What is your name?'
println "Hello $username."
裴兴言
2023-03-14

我来这里是想找出从命令行读取用户输入的最简单方法。。。我在别处找到了答案,将在这里发布以记录“真正的”Groovy方式,因为它仍然缺失:

def username = System.console().readLine 'What is your name?'
println "Hello $username"

正如Larry Battle所说,如果使用groovy控制台,请确保查看输出的背景“黑色”窗口并键入输入。

编辑

在控制台不可用的环境中(例如从IDE运行),可能使用以下方法:

println "What is your name?"
println "Your name is ${System.in.newReader().readLine()}"
 类似资料:
  • 这是我目前拥有的:

  • 问题内容: 我想从命令行读取标准输入,但是在提示我输入之前,我的尝试以结束程序退出而告终。我正在寻找C#中的Console.ReadLine()等效项。 这是我目前拥有的: 问题答案: 我不确定块有什么问题 因为它可以在我的机器上使用。但是,对于下一个块,您需要一个指针,该指针指向要将输入分配给它们的变量。尝试替换为。不要使用,因为它解析内存中已有的字符串,而不是解析来自stdin的字符串。如果您

  • 本文向大家介绍在Java中从控制台读取输入的方法,包括了在Java中从控制台读取输入的方法的使用技巧和注意事项,需要的朋友参考一下 让我们看一些从Java控制台读取输入的方法- 示例 输出结果     一个名为Demo的类包含主函数。创建了Scanner类的一个实例,并使用nextLine函数读取字符串输入的每一行。定义一个整数值,并使用nextInt从标准输入控制台读取它。类似地,nextFlo

  • 问题内容: 通过控制台进行任何输入的数据类型(如我使用BufferedReader类所做的那样)为String。之后,我们将其类型转换为需要查询的数据类型(如Inter.parseInt()为整数)。但是在C语言中,我们可以接受任何输入原始数据类型,而在Java中,所有输入类型都是Neccerily String。为什么是这样? 问题答案: 控制台输入实际上以一系列字节而不是字符串的形式读入。这是

  • 问题内容: 如何使用该类从控制台读取输入?像这样: 基本上,我只需要让扫描程序读取用户名的输入,然后将输入分配给变量。 问题答案: 一个简单的例子来说明如何从中读取单个整数。这真的很简单。 要检索用户名,我可能会使用。 如果你想对输入进行更多控制,或者仅验证变量,也可以使用。 你可以在API文档中找到有关其实现的更多信息

  • 我试图实时调试一个C程序,它使用来自VScode的C/C++扩展,还允许我使用scanf()将直接输入写到控制台。但是,当我调试代码时,它打开调试控制台,不允许我输入任何输入。 我发现人们回答这个问题的两个线程: https://github.com/omnisharp/omnisharp-vscode/issues/1053 两者都建议将launch.json文件中的“Console”属性设置为