微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift – 正确使用NSGetExecutablePath

我尝试在运行时获取应用程序的路径.我从C中找到了一些旧的源代码并将其转换为函数参数类型定义:

var path = [Int8] (count:1024,repeatedValue: 0)
var bufsize : UInt32 = 1024

if _NSGetExecutablePath(&path,&bufsize) == 0 {
println("executable path is \(path)")
}

它运行,但我需要一个Int8数组,而不是一个字符串.所以我必须搜索字符链的末尾并将其转换回字符串.在SWIFT中使用此功能的正确方法是什么?

解决方法

您需要从C字符串创建Swift字符串

let executablePath = String(CString: path,encoding: NSASCIIStringEncoding)!
println("executable path is \(executablePath)")

但是有一种更简单的方法获取可执行文件的路径

let executablePath = Bundle.main.executablePath!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐