如何通过<date>&#34;上的<name>创建&#34;文本</日期> </名称>

时间:2015-01-27 18:27:45

标签: ios xcode swift

所以问题实际上很简单,但我不知道如何处理这个问题。我知道这段代码是基于这个问题由模板生成的:

XCode automatically generated comments?

我想使用xcode在每台mac机上提供的 <name> ,对于某些类型的日志,它对用户来说是唯一的。

修改

这是swift模板文件在Xcode用来创建我的工作文件之前的样子:

//
//  ___FILENAME___
//  ___PROJECTNAME___
//
//  Created by ___FULLUSERNAME___ on ___DATE___.
//___COPYRIGHT___
//

当然,解析它没有意义。

问题是:有谁知道如何在我的应用程序中使用swift获取此名称?

我在这里搜索答案/谷歌但到目前为止没有运气。

2 个答案:

答案 0 :(得分:1)

我不知道如何阅读标题。但你可以这样做。

首先,如果您需要文件的创建日期,可以使用NSFileManager

var path = "path/to/your/file/"
var fileAttribs:NSDictionary = NSFileManager.defaultManager().attributesOfFileSystemForPath(path, error: nil)!

var creationDate = fileAttribs.objectForKey(NSFileCreationDate)

此外,如果您需要完整的用户名,则可以使用NSFullUserName()NSUserName()功能。它应该返回与__FULLUSERNAME__

相同的字符串
var fullUsername = NSFullUserName()
var username = NSUserName()

有时在iOS模拟器中,此用户名为空,但在真实应用中,它应该可以正常工作。

答案 1 :(得分:0)

在模板实例化时写入的文本 - 也就是说,当您使用文件&gt;新&gt;文件... 模板创建新的Xcode项目(或现有项目中的新文件)时)。您无法读取编译代码的源文件的内容。 (好吧,除非你将该文件与编译后的二进制文件一起发送,并像其他文本文件一样读取它。)

但这只是文本替换 - 它可以在文件中的任何位置完成,而不仅仅是在注释标题中。因此,您可以创建自己的文件或项目模板,并在模板文件中将这些替换宏放在代码中而不是注释中:

let schmoeWhoCreatedThisFile = "___FULLUSERNAME___"

Here's a tutorial在几秒钟的网络搜索中找到,其中包含有关创建模板以及可在其中使用的替换宏的完整详细信息。

请记住,当您创建新文件或项目时,会发生替换 - 如果您正在寻找谁对您的源文件进行了最新更改,或者是谁构建了发送给您客户的应用程序,你正在咆哮错误的树。你可以做的一些事情with source control;对您或您的组织而言,其他更多是(人为定义的,人为执行的)政策。