我有一个挑战,我要提供两行数据
2 3
1 2 3 4 5
我必须访问这些数据并将其转换为两个变量(2和3),将第二行转换为数组。我收集了这个挑战的一部分是阅读这条线并做了类似的事情:
func readIntegers() -> [String] {
return readLine()!.componentsSeparatedByString(" ").map { $0 }
}
如何将上面的数据输入Playground,以便我可以使用ReadLine()访问它?我必须这样做,因为这是HackRank网站提供的界面的要求,但我想在Playground中模仿它。我目前可以看到代码编辑器和调试区域。是否有数据输入窗格?
答案 0 :(得分:2)
您可以使用
将标准输入重定向到从某个文件中读取freopen("/path/to/input.txt", "r", stdin)
这适用于Playground和已编译的命令行工具项目。如果您想将数据保存在Playground中,那么
在Playground中,重定向标准输入以从中读取 资源文件:
if let path = Bundle.main.path(forResource: "input", ofType: "txt") {
freopen(path, "r", stdin)
}
现在readLine()
从“input.txt”读取。