子串Swift iOS以\ n为限制

时间:2015-05-21 09:11:40

标签: ios swift substring text-files

我很不习惯使用swift进行编码,对我来说这是非常新的(更习惯于在Java或c#上进行编码)。

我正在尝试在其他语言上做一些非常“简单”的事情,但我没有成功过滤,因为我想要一个字符串,这是代码:

let id = self.Id.text
let pass = self.Pass.text
let documentDirectoryURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! as! NSURL
let fileDestinationUrl = documentDirectoryURL.URLByAppendingPathComponent("file.txt")
let text = "Identifiant: " + id + "\n" + "Password: " + pass
text.writeToURL(fileDestinationUrl, atomically: true, encoding: NSUTF8StringEncoding, error: nil)

我的代码的第一部分写在文本文件数据上,这是文本文件返回的内容:

Identifiant: testId
Password: testPass

我想要检索id获取的内容以及pass获得的内容(在本例中为testId和testPass ..):

let startIndex = advance(text.startIndex, 14)
let endIndex = advance(startIndex, "to the \n character?")
//From the : to the \n, and then from the other : to the end, like shown after with Java code
let range = startIndex..<endIndex
var idFinal = text[range]

这是我被封锁的地方。我找到了从某个角色(这里是第14个)过滤的方法,但是我找不到停在具有未知位置的已定义角色的方法。如果有人知道我应该做什么而不是"to the \n character"

使用Java,我这样做了:

String ligne;
while((ligne = br1.readLine()) != null){
    if(ligne.startsWith("Identifiant: ")){
        System.out.println(ligne);
        id = ligne.substring(ligne.lastIndexOf(':')+2);
        }
    if(ligne.startsWith("Pass: ")){
        System.out.println(ligne);
        pass = ligne.substring(ligne.lastIndexOf(':')+2);
        }
    }

这可以用swift吗? 我希望自己足够精确,如果需要,我可以添加代码或解释。

提前致谢。

0 个答案:

没有答案