如何在Swift中使用字符串部分和字节数据创建新数据?

时间:2018-12-03 09:26:43

标签: ios swift

我正在制作一个行为类似于云存储的应用程序。我需要使用Alamofire上传文件。当我上传相关文件时,我需要将一个字符串保存到我的文件数据中,该字符串包含以下内容:“ folderName / fileName”(显示我的云存储应用程序上的路径),以字节为单位。我可以通过在Java中使用以下代码来实现这一点:

@Override
protected Map<String, DataPart> getByteData() {
   Map<String, DataPart> params = new HashMap<>();

   params.put("parameterName", new DataPart("folderName/fileName", fileInBytes));
   return params;
}

但是我不知道如何在Swift中做到这一点。我需要先使用字符串和数据创建一个新数据,然后再使用Alamofire上载它。我该如何实现?任何回应将不胜感激。

2 个答案:

答案 0 :(得分:0)

感谢所有回答我的人,我找到了解决方案。我使用字符串和数据创建了一个名为DataPart的结构,并将该参数和参数名称一起放入我的Alamofire请求中。 “ What is the equivalent of a Java HashMap<String,Integer> in Swift”这个条目对我很有帮助,以防万一。

答案 1 :(得分:-1)

如果我理解正确,您想将路径(类型为String)转换为swift的Data结构,然后将其与合并文件的数据一起上传到服务器。

这就是您的操作方法-

let path = "folderName/fileName"
let pathEncodedData = path.data(using: .utf8)!

let fileData: Data = #YourFile'sData

let params = ["path": pathEncodedData, "fileData": fileData]