Swift在一个String上添加多个stringByReplacingOccurrencesOfString?

时间:2015-07-17 15:29:08

标签: xcode string swift binary

您好我想创建一个将字符更改为二进制代码的应用程序,我想知道是否有办法在一个字符串上添加多个stringByReplacingOccurrencesOfString,或者我应该采取另一种方法来处理这个“问题”。 这是我到目前为止所拥有的

func textToBinary(theString: String) -> String {
    return theString.stringByReplacingOccurrencesOfString("a",
        withString: "01100001")
}

textArea.text = textToBinary(lettersCombined)

// lettersCombined is the string that i want to turn into BinaryCode.

1 个答案:

答案 0 :(得分:1)

试试这个:

func textToBinary(theString : String, radix : Int = 2) -> String {
    var result = ""
    for c in theString.unicodeScalars {
        result += String(c.value, radix: radix) + " "
    }

    return result
}

println(textToBinary("a"))
println(textToBinary("abc", radix: 10))
println(textToBinary("€20", radix: 16))
println(textToBinary(""))

(最后一个是笑脸但不知何故我的浏览器无法显示它。)

修改:如果您想将字符串填充为8个字符,请尝试以下操作:

let str = "00000000" + String(c.value, radix: radix)
result += str.substringFromIndex(advance(str.startIndex, str.characters.count - 8)) + " "

第一行在字符串的左侧添加八个0。第二行从填充字符串中获取最后8个字符。