当前位置: 首页 > 面试题库 >

在命令行应用程序中从键盘输入

田志
2023-03-14
问题内容

我正在尝试为新的Apple编程语言Swift的命令行应用程序获取键盘输入。

我扫描了文档无济于事。

import Foundation

println("What is your name?")
???

有任何想法吗?


问题答案:

我设法弄清楚了,而没有陷入C:

我的解决方案如下:

func input() -> String {
    var keyboard = NSFileHandle.fileHandleWithStandardInput()
    var inputData = keyboard.availableData
    return NSString(data: inputData, encoding:NSUTF8StringEncoding)!
}

较新的Xcode版本需要显式的类型转换(在Xcode 6.4中有效):

func input() -> String {
    var keyboard = NSFileHandle.fileHandleWithStandardInput()
    var inputData = keyboard.availableData
    return NSString(data: inputData, encoding:NSUTF8StringEncoding)! as String
}


 类似资料:
  • 场景是我们编写了一个控制台应用程序,我们希望在Inno设置期间调用该应用程序并读取其输出。与此问题相反,当其他程序仍在运行时,必须从Inno设置读取此输出。输出将包含runnig应用程序的进度信息(double或int值),我们希望用ProgressGauge在Inno中显示这些信息。该应用程序是一个用C#编写的简单可执行程序,可以运行几秒钟到几分钟。 这可能吗?如果可能,是否可以在不冻结Inno

  • 问题内容: 我正在使用IntelliJ 14.1.15运行OSX 10.11。 我有一个将txt文件作为参数的程序。我可以从终端通过 java SearchCmd test.txt 运行它,然后它允许我输入搜索词并搜索该列表。 如何在IntelliJ中执行此操作,以便可以单击“运行”按钮并读取文件,并可以在IntelliJ控制台中输入搜索词。 主类“ SearchCmd”包含main方法,例如:

  • 问题内容: 嗨,我正在开发一个需要我运行一些bash代码的应用程序,有没有一种方法可以将脚本硬编码到我的应用程序中然后运行它?例如(这是一个非常简化的示例) 我有以下方法来运行一行bash命令,但需要在多行中运行类似的内容。同样,上面的代码是一个非常简化的示例,我实际上在执行的操作必须通过脚本运行,而不能通过Java完成。我也想对它进行硬编码,因为我知道可以将脚本存储在手机上并使用以下命令运行它,

  • 我有一个部分扎根的Android设备。所谓部分root,是指我只能通过ADB运行root命令。我已经想出了如何在设备本身的终端模拟器中本地运行这些命令。我的问题是,我将如何着手编写Android应用程序的代码,从按钮按钮执行一个ADB命令(或多个命令)?我找不到任何解释如何通过应用程序界面运行直接ADB命令的东西。只是为了澄清,任何涉及“su”的东西都不会在这个设备上工作。它只接受ADB输入进行根

  • 问题内容: 我通常使用java.lang.ProcessBuilder和java.lang.Process来运行外部命令行程序,并且对运行和完成命令运行良好。例如,这将在工作目录中运行带有参数“ myArg”的“ myProgram”: 但是,假设我想运行脚本或程序或具有交互式输入的内容(启动后提示我提供更多输入)。我可以使用与上面类似的代码在Java中执行此操作,还是需要其他方法?还是有一些图书

  • 问题内容: 我刚刚开始弄乱JLine来解析控制台模式下的字符输入。看来运作良好,但我想知道: JLine中是否有非阻塞方式来查找字符是否可用?(例如,在Windows中。) 我想我总是可以将键盘输入包装在其自己的线程中,该线程随后将键盘字符提供给主线程一个线程安全的队列,但这似乎是不必要的。 编辑 :这是逐字符解析。我不会使用GUI。在控制台模式下,Java中通常的InputStream I /