swift - 快速附加字符串?

标签 swift string

我试图在这里构建长字符串,我将用它来使用http发布数据,问题是当我调用这个函数时,我收到错误Thread Exception。我认为这可能是不好的做法,这是在 swift 中构建字符串的其他方法吗?

import Foundation

public var link: String!
public var entryData = NSDictionary()
public var postData : String! = ""
var data:String! = ""
var data2:String! = ""

public func setLink(text:String)
{
    postData.appendContentsOf(text)
}

public func setFirstField(entry:String,value:String) {
    data = "\(entry)=\(value)"
    postData.appendContentsOf(data)
}

public func setNextFields(entry:String,value:String)
{
    data2 = "&\(entry)=\(value)"
    postData.appendContentsOf(data2)
}

最佳答案

您使用了错误的 API。

appendContentsOf 是一个泛型,需要相同类型的数组

根据您的情况,只需替换

postData.appendContentsOf(text)

postData.append(text)

或者更简单

postData += text

PS:我强烈建议使用 (NS)URL(NS)URLComponents/(NS)URLQueryItem 来实现此目的。

并且不要对明显非可选的字符串使用隐式解包选项。

关于swift - 快速附加字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40057675/

相关文章:

javascript - Android 应用程序在接收Intent bundle 时崩溃?

ios - 使用云工具包将图像上传到icloud会抛出错误ios

c - C 中的 snprintf() 不单独处理目标字符串的最低两个字节

c++ - 类字符串是否总是被初始化为空?

arrays - 从字符串数组中过滤掉空字符串

python - 在Python中查找字符串中的所有子字符串,我怎样才能做得更好?

ios - ScrollView 中的重叠元素

swift - 无法将数据从 UIPickerView 传递到 CustomTableViewCell

ios - 循环中的 tableView reloadData 不在每次传递时绘制单元格

不同类型对象上的 Swift 4 KeyPath