gpt4 book ai didi

ios - 字符 1833 周围未转义的控制字符

转载 作者:行者123 更新时间:2023-11-28 15:45:26 25 4
gpt4 key购买 nike

我有一个字符串:

Optional("[{\"notes\":[],\"name\":\"1\",\"status\":1,\"identifier\":\"82AF8894-8C8B-4EEE-B185-11798769BBEF\"},{\"notes\":[],\"name\":\"2\",\"status\":1,\"identifier\":\"390F19DF-9DA3-45F0-AAA5-D890B618B2F9\"},{\"notes\":[],\"name\":\"3\",\"status\":1,\"identifier\":\"9B08FC46-B463-4DC7-B5E6-2E48982C3F2C\"},{\"notes\":[],\"name\":\"4\",\"status\":1,\"identifier\":\"660E2206-DFFD-4997-8A2E-39ADEB46C4E3\"},{\"notes\":[],\"name\":\"5\",\"status\":1,\"identifier\":\"47F997CD-0C1C-4CFE-8DEB-A7787DD863DC\"},{\"notes\":[],\"name\":\"6\",\"status\":2,\"identifier\":\"6AA378A4-5C36-48C2-92B1-C48F4DB109AF\"},{\"notes\":[],\"name\":\"7\",\"status\":1,\"identifier\":\"40E0178A-67D8-4A3B-88CC-680C96AAB656\"},{\"notes\":[],\"name\":\"8\",\"status\":2,\"identifier\":\"B6329CF3-C047-4606-A868-1F85E214393C\"},{\"notes\":[],\"name\":\"9\",\"status\":1,\"identifier\":\"876BD7BE-CAC2-414C-B697-49B90A90419B\"},{\"notes\":[],\"name\":\"10\",\"status\":2,\"identifier\":\"CDCD0612-450A-4CDD-AA42-219ADFC9E070\"},{\"notes\":[],\"name\":\"11\",\"status\":2,\"identifier\":\"789CD52E-4B48-4562-9590-A00DA198D1B8\"},{\"notes\":[],\"name\":\"12\",\"status\":1,\"identifier\":\"84B901E6-0C37-4DA5-9430-69617CC62738\"},{\"notes\":[],\"name\":\"13\",\"status\":2,\"identifier\":\"E4C6D04C-D02C-4F57-AE80-641178EB7798\"},{\"notes\":[],\"name\":\"14\",\"status\":1,\"identifier\":\"A6CD59D4-4EC0-405C-8D10-DB811CD07000\"},{\"notes\":[],\"name\":\"15\",\"status\":2,\"identifier\":\"537E9463-1A46-422E-9FA3-8A7A42078B60\"},{\"notes\":[],\"name\":\"16\",\"status\":2,\"identifier\":\"8DD2BFAA-D2C0-4D66-AB3D-7E2E7856F01D\"},{\"notes\":[{\"date\":\"2017-03-28T00:00:00.000+0200\",\"text\":\"byl ale mial gosci i poprosil zeby przyjsc jutro. Byl grzeczny i kulturalny🙃\",\"identifier\":\"3ADE4B68-1932-4563-A9AC-846109ADBB84\"},{\"date\":\"2017-03-15T00:00:00.000+0100\",\"text\":\"Pozne popoludnie... Pan Jedrek, operuje serce, jest chirurgiem, kardiochirurgiem... Byl zmecxony bo wlasnie skonczyl operacje serca;) Powiedzial tez ze nie chce aaaaaaa...bo jest Aaaaaaaaaaaa🙃\n\nWyrazil zgode zeby za conajmniej 8-9 dni wrocic🙃\",\"identifier\":\"03F16207-D9E4-4C46-A736-9F4B3CE9181A\"}],\"name\":\"17\",\"status\":3,\"identifier\":\"906CEFDA-C32E-4DB6-96FE-BFF21083C4C9\"},{\"notes\":[],\"name\":\"18\",\"status\":1,\"identifier\":\"9BE0EBA7-B87A-4D2E-AC70-278A88D59617\"},{\"notes\":[],\"name\":\"19\",\"status\":2,\"identifier\":\"46A993B8-664F-4222-ABA2-8360043A312A\"},{\"notes\":[],\"name\":\"20\",\"status\":2,\"identifier\":\"A5D00809-AA95-4C78-8A2C-0A42D79B1FA3\"},{\"notes\":[],\"name\":\"21\",\"status\":2,\"identifier\":\"F07E514C-663F-479B-B747-DF0F2B4ED211\"},{\"notes\":[],\"name\":\"22\",\"status\":2,\"identifier\":\"3ED807F2-04B3-4F1E-9F88-F2D65C0ADABA\"},{\"notes\":[],\"name\":\"23\",\"status\":2,\"identifier\":\"FAD09FDA-F7F6-49AE-B25D-3FDFFB0B2F6D\"},{\"notes\":[],\"name\":\"24\",\"status\":2,\"identifier\":\"41A482F5-5F7B-41F6-AD2E-BE061693E524\"},{\"notes\":[],\"name\":\"25\",\"status\":2,\"identifier\":\"8F567828-05CD-42CC-9F45-B045F2BF0F82\"},{\"notes\":[],\"name\":\"26\",\"status\":2,\"identifier\":\"93273621-FEE1-4C76-902E-91620234B1E3\"},{\"notes\":[],\"name\":\"27\",\"status\":2,\"identifier\":\"68B77921-F5A4-4A04-B2B7-6F73444E109B\"},{\"notes\":[],\"name\":\"28\",\"status\":1,\"identifier\":\"AC1EFC4F-C3E1-4CDB-AAE3-02FDCE707700\"},{\"notes\":[],\"name\":\"29\",\"status\":1,\"identifier\":\"5E53DA7C-A79F-4987-B8CF-1E2BA1E156FE\"},{\"notes\":[],\"name\":\"30\",\"status\":2,\"identifier\":\"A706E390-806C-4979-A528-8B4D732B4486\"},{\"notes\":[],\"name\":\"31\",\"status\":1,\"identifier\":\"18025E7A-FF58-475B-B613-147D184DE48F\"},{\"notes\":[],\"name\":\"32\",\"status\":1,\"identifier\":\"7E4670AA-1A6E-46BD-9D3F-86F0952CC698\"},{\"notes\":[],\"name\":\"33\",\"status\":1,\"identifier\":\"A6047C98-A871-455E-B2B2-109BD671071E\"},{\"notes\":[],\"name\":\"34\",\"status\":1,\"identifier\":\"696F6E18-663C-4EDF-BA23-E203A771D875\"},{\"notes\":[],\"name\":\"35\",\"status\":1,\"identifier\":\"5324F03C-CFAF-4434-ADFF-98A9809AD655\"},{\"notes\":[],\"name\":\"36\",\"status\":1,\"identifier\":\"65F815F3-CEA8-449F-8C34-742B747617F4\"},{\"notes\":[],\"name\":\"37\",\"status\":1,\"identifier\":\"A0B24629-6FFB-44ED-9A4C-829F603C10E3\"},{\"notes\":[],\"name\":\"38\",\"status\":1,\"identifier\":\"8175F5F8-064A-4228-AA7A-CA5BE6E21FCC\"},{\"notes\":[],\"name\":\"39\",\"status\":2,\"identifier\":\"1E306E6B-38AB-40EC-B17F-81D83E455855\"},{\"notes\":[],\"name\":\"40\",\"status\":2,\"identifier\":\"DD881B40-F181-4515-81C6-F9DA2D46D1F4\"},{\"notes\":[{\"date\":\"2017-02-09T00:00:00.000+0100\",\"text\":\"jezyk rosyjski\",\"identifier\":\"D54DDEC9-D7AF-4F4A-9C24-CA799A9364CA\"}],\"name\":\"41\",\"status\":2,\"identifier\":\"52A9D272-E7A0-40D3-8CAF-867F3EF1C479\"},{\"notes\":[],\"name\":\"42\",\"status\":2,\"identifier\":\"9EF4FB3C-DE2A-45AE-AA84-C1411301F88F\"},{\"notes\":[],\"name\":\"43\",\"status\":1,\"identifier\":\"496F8BD8-666A-47CE-8489-A3352F3EE429\"},{\"notes\":[],\"name\":\"44\",\"status\":1,\"identifier\":\"C8AFD0ED-ECC2-4A4F-AC28-70BAD5E8E317\"},{\"notes\":[],\"name\":\"45\",\"status\":1,\"identifier\":\"4FB379F9-D20F-463E-B3B4-5543CB231478\"},{\"notes\":[],\"name\":\"46\",\"status\":1,\"identifier\":\"A0E4028C-ADC4-4373-AE04-5A12EE4EE9A0\"},{\"notes\":[],\"name\":\"47\",\"status\":2,\"identifier\":\"4DE26AAC-6420-4C1C-9624-969989A5D027\"},{\"notes\":[],\"name\":\"48\",\"status\":2,\"identifier\":\"138118B3-9D6B-4227-9EE3-869134A4A53C\"},{\"notes\":[],\"name\":\"49\",\"status\":2,\"identifier\":\"4AE34F98-6FD1-4393-BB1B-4310D24E7240\"},{\"notes\":[],\"name\":\"50\",\"status\":2,\"identifier\":\"DBE0867C-B763-4B39-8043-B06F624EA388\"}]")

I simply serialize JSON like this on String:

    do {

guard let data = data(using: .utf8) else {
return nil
}

guard let object = try JSONSerialization.jsonObject(with: data, options: []) as? [[AnyHashable: Any]] else {
return nil
}
return object

} catch {
print("error: \(error)")
}

但有时我会收到以下错误,我不知道如何解决:

error: Error Domain=NSCocoaErrorDomain Code=3840 "Unescaped control character around character 1833." UserInfo={NSDebugDescription=Unescaped control character around character 1833.}

它是我的字符串中的字符索引还是其他? 1833 是什么意思?

最佳答案

它是我的字符串中的字符索引还是其他? 1833 是什么意思?

它是数据中的一个字节偏移量。


在您的例子中,data 中的字节从您的字符串转换而来:

+1829: f0
+1830: 9f
+1831: 99
+1832: 83
+1833: 0a <-
+1834: 0a
+1835: 57
+1836: 79
+1837: 72

(偏移量以十进制显示,每个字节以十六进制显示。)

它就在您的字符串中:Aaaaaaaaaaaa🙃\n\nWyrazil。 (准确的说,上面的9个字节代表🙃\n\nWyr。)

由于 Swift Optional 以调试形式输出其内容,\n 表示单个控制字符 U+000A,在 JSON 字符串中无效。

我不知道你是如何得到那个字符串的,所以我不能在代码中显示,但你需要修复生成这种无效 JSON 的部分。 JSON 字符串中的控制字符需要进行转义。

关于ios - 字符 1833 周围未转义的控制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43153361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com