1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| import UIKit import Foundation
struct User: Codable { var name: String var age: Int }
let jsonStr = """ { "name": "Ryan", "age": 18 } """
let jsonData = jsonStr.data(using: .utf8)!
let decoder = JSONDecoder()
do { let userObj = try decoder.decode(User.self, from: jsonData) print("userObj = \(userObj)") } catch { print("decode error") }
let user = User(name: "Lux", age: 20)
let encoder = JSONEncoder()
do { let data = try encoder.encode(user) let jsonStr = String(data: data, encoding: .utf8)! print("jsonStr = \(jsonStr)") } catch { print("encode error") }
struct Introduction: Identifiable, Codable { var id = UUID() var idForDataBase: Int64 var image: String var title: String var text: String var date: String } class I18n { class func localizedString(_ key: String?) -> String { guard let key = key else { return "" } return NSLocalizedString(key, tableName: nil, bundle: Bundle(for: I18n.self), value: "", comment: "") } } let culturalRelicsData = [ Introduction(idForDataBase: Int64.init(20210303063005), image: "郎窑红釉穿带直口瓶", title: I18n.localizedString("bottle"), text: I18n.localizedString("郎窑红釉穿带直口瓶,清康熙,高20.8cm,口径6.1cm,足径9.1cm。瓶直口,长颈,垂腹,圈足外撇。足外墙两侧各有一长方形穿孔,可穿系绳带。在容器上系带是对无梁、无系、无扳手的器物进行提拿的传统方法,拆卸容易而又非常实用,也可以使器物在摆放位置上固定,不致被损坏。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063006), image: "张成造款雕漆云纹盒", title: I18n.localizedString("box"), text: I18n.localizedString("张成是元代雕漆大家,其传世作品被一致认为是雕漆作品里的珍品。张成造款雕漆云纹盘为故宫漆器的代表作品。高3.3cm,口径19.2cm.盘木胎黑漆,内外均雕云纹。堆漆甚厚,晶莹照人,刻工圆润。从此件具款的剔犀圆盘可知张成不仅是剔红高手,剔犀技巧也精湛至极,此盘为研究元代剔犀工艺提供了实例。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063007), image: "彩漆描金楼阁式自开门群仙祝寿御制钟", title: I18n.localizedString("clock"), text: I18n.localizedString("黑漆彩绘楼阁群仙祝寿钟为故宫钟表的代表作。高185cm,面宽102cm,侧宽70cm.此钟共有7套机械系统,分别控制走时、报时、景箱内的活动装置等,技术水准相当高。根据记录,从乾隆八年接旨着手设计到十四年完工,历时五年多。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063008), image: "乾隆款金瓯永固杯", title: I18n.localizedString("cup"), text: I18n.localizedString("宫廷之宝乾隆款金瓯永固杯为故宫宫廷文物的代表作。高12.5厘米,口径8厘米,足高5厘米,口边刻有回纹。根据清“内务府活计档”记载,乾隆皇帝对此杯的制作十分重视,不仅调用内库黄金、珍珠、宝石等珍贵材料,而且精工细作,曾多次修改,直至皇帝满意为止。因此,该杯一直被清代皇帝视为珍贵的祖传法宝。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063009), image: "掐丝珐琅缠枝莲纹象耳炉", title: I18n.localizedString("ear_furnace"), text: I18n.localizedString("掐丝珐琅缠枝莲纹象耳炉,元,通高13.9cm,口径16cm,足径13.5cm。清宫旧藏。炉铜胎,圆形,鼓腹,象首卷鼻耳,圈足。炉颈部浅蓝釉地,饰黄、白、红、紫四色菊花12朵。腹部宝蓝釉地,饰红、白、黄三色掐丝珐琅缠枝莲花6朵。其下饰莲瓣纹一周。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063010), image: "青玉云龙纹炉", title: I18n.localizedString("grain_furnace"), text: I18n.localizedString("青玉云龙纹炉为故宫玉器的代表作品。宋代出品,高7.9cm,口径12.8cm.炉青玉质。通体以“工”字纹为底,上饰游龙、祥云和海水纹。器内底阴刻乾隆七言诗一首:“何年庙器赞天经,刻作飞龙殿四灵。毛伯邢侯异周制,祖丁父癸似商形。依然韫匵阅桑海,所惜从薪遇丙叮土气羊脂胥变幻,只余云水淡拖青。”"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063011), image: "清明上河图", title: I18n.localizedString("painting"), text: I18n.localizedString("《清明上河图》为故宫书画代表作品,该画为张择端所作,以精致的工笔记录了北宋末叶、徽宗时代首都汴京(今开封)郊区和城内汴河两岸的建筑和民生。全图分为三个段落。作品以长卷形式,采用散点透视的构图法,将繁杂的景物纳入统一而富于变化的画面中。在5米多长的画卷里,共绘了550多个各色人物。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063012), image: "平复帖", title: I18n.localizedString("placard"), text: I18n.localizedString("西晋陆机的《平复帖》是故宫法帖的代表作品,也是目前存世最早的名人墨迹,内容为陆机向朋友问候疾病的书札。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063013), image: "酗亚方尊", title: I18n.localizedString("zun"), text: I18n.localizedString("青铜之宝酗亚方尊为故宫青铜器的代表作品。青铜器的产生是古代中国从野蛮时代走向文明时代的重要标志之一。尊是盛酒器,流行于商早期至春秋战国时期。方尊传世较少。上世纪70年代在山东益都苏埠屯出土了几件带有亚铭文的青铜器,从挖掘的墓穴来看,规模都不小,加上众多带有亚铭记的器物,说明它们所代表的可能是一个大族。"), date: I18n.localizedString("故宫镇馆之宝")), Introduction(idForDataBase: Int64.init(20210303063014), image: "沈子蕃缂丝《梅鹊图》轴", title: I18n.localizedString("magpie"), text: I18n.localizedString("沈子蕃缂丝《梅鹊图》轴为故宫织绣的代表作品。图轴纵104cm,宽36cm.中国古代缂丝被认为是丝织工艺中最为高贵的品种,古人以“一寸缂丝一寸金”言缂丝作品之珍贵。缂丝之高贵,首先因其耗费工时巨大,以万缕千丝成其工巧,其次,缂技易学难精,虽摹缂书画,并非简单的照葫芦画瓢。"), date: I18n.localizedString("故宫镇馆之宝")) ] let encoder2 = JSONEncoder() do { let data = try encoder2.encode(culturalRelicsData) let jsonStr = String(data: data, encoding: .utf8)! print("jsonStr = \(jsonStr)") } catch { print("encode error") }
|