您好我想创建一个将字符更改为二进制代码的应用程序,我想知道是否有办法在一个字符串上添加多个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.
答案 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个字符。