gpt4 book ai didi

scala - 从 Scala 控制台读取密码

转载 作者:行者123 更新时间:2023-12-03 23:41:50 24 4
gpt4 key购买 nike

在 Scala 程序中,我需要从标准输入中读取密码字符串(禁用回显)。我试过:

java.io.Console.readPassword

但由于某种原因,我无法调用 java.io.Console 中的任何方法。来自 Scala (?) 的对象。

从 Scala 的标准输入读取字符串(禁用回显)的“标准”方式是什么?

最佳答案

我假设您想从控制台提示中读取密码,因此您需要创建一个 Console来自 System 的实例( Console 不是单例)。

scala> val standardIn = System.console()
standardIn: java.io.Console = java.io.Console@69d1964d

scala> val password = standardIn.readPassword()

请注意,没有 import由于 Scala 的类型推断以及 System 的事实,这是必要的默认情况下已经在范围内。

咨询 javadocjava.io.Console了解更多信息。

编辑:在编译的 Scala 程序中:
object ReadPassword {
def main(args: Array[String]) {
val standardIn = System.console()
println("standardIn object: " + standardIn)

print("Password> ")
val pw = standardIn.readPassword()

print("Password: ")
pw.foreach(print) // For demonstration purposes
println()
}
}

编译/运行:
$ scalac ReadPassword.scala
$ scala ReadPassword
standardIn object: java.io.Console@311671b2
Password>
Password: hello world

关于scala - 从 Scala 控制台读取密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13146019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com