热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

如何使用包含已编码值的Encodable在Swift中编码结构

如何解决《如何使用包含已编码值的Encodable在Swift中编码结构》经验,请问有没有懂的朋友?

想象一下一个数据结构,其中包含一个contents已经编码的JSON片段的值。

let partial = """
{ "foo": "Foo", "bar": 1 }
"""

struct Document {
  let contents: String
  let other: [String: Int]
}

let doc = Document(contents: partial, other: ["foo": 1])

所需的输出

组合的数据结构应contents原样使用并编码other

{
  "contents": { "foo": "Foo", "bar": 1 },
  "other": { "foo": 1 }
}

使用 Encodable

以下Encodable编码实现Document为JSON,但是也将其重新编码contents为字符串,这意味着它被包装在引号中,并且所有"引号都转义为\"

{
  "contents": { "foo": "Foo", "bar": 1 },
  "other": { "foo": 1 }
}

输出量

{
  "contents": "{\"foo\": \"Foo\", \"bar\": 1}",
  "other": { "foo": 1 }
}

怎样才能encodecontents原样通过?


推荐阅读
  • 在现代移动应用开发中,尤其是iOS应用,处理来自服务器的JSON数据是一项基本技能。无论是使用Swift还是PHP,有效地解析和利用JSON数据对于提升用户体验至关重要。本文将探讨如何在Swift中优雅地处理JSON,以及PHP中处理JSON的一些技巧。 ... [详细]
  • 使用SwiftyJSON第三方库时,有时会发现获取到的数据顺序出现混乱。本文将探讨这一现象的原因,并提供解决方案以确保数据按预期顺序排列。 ... [详细]
  • 本文介绍如何在Spring Boot项目中集成Redis,并通过具体案例展示其配置和使用方法。包括添加依赖、配置连接信息、自定义序列化方式以及实现仓储接口。 ... [详细]
  • 本文介绍了如何在Swift 3.0中实现对设备识别码(DeviceNo)和用户账号ID(AccountId)的获取及存储。通过使用系统提供的UserDefaults服务,我们能够有效地管理这些关键数据,确保应用在不同场景下的稳定性和用户体验。 ... [详细]
  • 在前一篇文章中,我们已经成功地验证了原型功能的可行性。本文将继续深入探讨,通过优化之前的代码结构,逐步将单一视图控制器(VC)的应用程序重构为支持多个视图控制器的版本。 ... [详细]
  • 在Swift项目中集成Objective-C类或第三方框架的方法
    本文通过实例讲解如何在Swift项目中引入并使用Objective-C编写的ProgressHUD库。首先需要在项目中添加库文件,并设置Objective-C桥接头文件以实现语言间的互操作性。 ... [详细]
  • 本文探讨了在iOS应用中实现类似Android Snack Bar功能的方法,并特别关注如何确保Snack Bar正确显示在键盘下方。 ... [详细]
  • 实现‘点击恢复’功能 - Tap-to-Resume Feature in SpriteKit
    了解如何在应用程序从非活动状态返回时,在SpriteKit游戏中添加一个‘点击恢复’的文字提示。 ... [详细]
  • 自 Swift 3.0 以来,Grand Central Dispatch (GCD) 的使用方式有了显著的变化,变得更加简洁高效。本文将介绍 GCD 的核心概念,包括队列、同步与异步操作、服务质量 (QoS) 以及常见的使用场景。 ... [详细]
  • 本文将探讨iOS开发过程中需要掌握的三种关键编程语言——C、Objective-C和Swift,并深入解析面向过程与面向对象编程的概念,同时对比iOS与Android两大移动平台的特点。 ... [详细]
  • 本文探讨了如何在字符串中无条件地将一个值替换为另一个值,即使原值不断变化。例如,无论原始值是2、4还是5,都能将其成功替换。 ... [详细]
  • 本文介绍了iOS应用开发的主要框架,包括Foundation、UIKit、CoreData及CoreGraphics等,并探讨了开发iOS应用所需的硬件和软件环境,以及推荐的编程语言。 ... [详细]
  • 本文通过个人经历引出关于数学教学中的一个常见误解——被零除的结果,并深入探讨了浮点数中负零的存在及其背后的数学原理。 ... [详细]
  • 本文基于前文的内容,进一步探讨如何在 iOS 应用中高效地实现高斯模糊背景效果。我们将通过具体代码示例,展示如何利用 Swift 和 UIKit 创建具有毛玻璃效果的界面背景。 ... [详细]
  • 系统:MacOS10.15.2,XCode11.3,swift5.0写作时间:2020-01-09说明Swift中的闭包(Closur ... [详细]
author-avatar
手机用户2502855763
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有