工具方法json数据的Unicode乱码

简介: 今天在爬取一个网站返回的一段json数据但是一看吓一跳 查询得知这是为了更好的传输中文,json进行了Unicode编码。 下面是工具方法:    1 public static String decodeUnicode(String theString) { 2 ...

今天在爬取一个网站返回的一段json数据但是一看吓一跳

查询得知这是为了更好的传输中文,json进行了Unicode编码。

下面是工具方法:

  

 1 public static String decodeUnicode(String theString) {    
 2         char aChar;    
 3         int len = theString.length();    
 4         StringBuffer outBuffer = new StringBuffer(len);    
 5         for (int x = 0; x < len;) {    
 6             aChar = theString.charAt(x++);    
 7             if (aChar == '\\') {    
 8                 aChar = theString.charAt(x++);    
 9                 if (aChar == 'u') {    
10                     // Read the xxxx    
11                     int value = 0;    
12                     for (int i = 0; i < 4; i++) {    
13                         aChar = theString.charAt(x++);    
14                         switch (aChar) {    
15                         case '0':    
16                         case '1':    
17                         case '2':    
18                         case '3':    
19                         case '4':    
20                         case '5':    
21                         case '6':    
22                         case '7':    
23                         case '8':    
24                         case '9':    
25                             value = (value << 4) + aChar - '0';    
26                             break;    
27                         case 'a':    
28                         case 'b':    
29                         case 'c':    
30                         case 'd':    
31                         case 'e':    
32                         case 'f':    
33                             value = (value << 4) + 10 + aChar - 'a';    
34                             break;    
35                         case 'A':    
36                         case 'B':    
37                         case 'C':    
38                         case 'D':    
39                         case 'E':    
40                         case 'F':    
41                             value = (value << 4) + 10 + aChar - 'A';    
42                             break;    
43                         default:    
44                             throw new IllegalArgumentException(    
45                                     "Malformed   \\uxxxx   encoding.");    
46                         }    
47         
48                     }    
49                     outBuffer.append((char) value);    
50                 } else {    
51                     if (aChar == 't')    
52                         aChar = '\t';    
53                     else if (aChar == 'r')    
54                         aChar = '\r';    
55                     else if (aChar == 'n')    
56                         aChar = '\n';    
57                     else if (aChar == 'f')    
58                         aChar = '\f';    
59                     outBuffer.append(aChar);    
60                 }    
61             } else    
62                 outBuffer.append(aChar);    
63         }    
64         return outBuffer.toString();    
65     }  

 

欢迎大家一起说出自己的想法。
目录
相关文章
|
2月前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
20天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
22天前
|
JSON JavaScript 前端开发
|
24天前
|
JSON 缓存 前端开发
PHP如何高效地处理JSON数据:从编码到解码
在现代Web开发中,JSON已成为数据交换的标准格式。本文探讨了PHP如何高效处理JSON数据,包括编码和解码的过程。通过简化数据结构、使用优化选项、缓存机制及合理设置解码参数等方法,可以显著提升JSON处理的性能,确保系统快速稳定运行。
|
1月前
|
JSON 人工智能 算法
探索LLM推理全阶段的JSON格式输出限制方法
文章详细讨论了如何确保大型语言模型(LLMs)输出结构化的JSON格式,这对于提高数据处理的自动化程度和系统的互操作性至关重要。
|
17天前
|
JSON API 数据安全/隐私保护
拍立淘按图搜索API接口返回数据的JSON格式示例
拍立淘按图搜索API接口允许用户通过上传图片来搜索相似的商品,该接口返回的通常是一个JSON格式的响应,其中包含了与上传图片相似的商品信息。以下是一个基于淘宝平台的拍立淘按图搜索API接口返回数据的JSON格式示例,同时提供对其关键字段的解释
|
2月前
|
JSON JavaScript Java
在Java中处理JSON数据:Jackson与Gson库比较
本文介绍了JSON数据交换格式及其在Java中的应用,重点探讨了两个强大的JSON处理库——Jackson和Gson。文章详细讲解了Jackson库的核心功能,包括数据绑定、流式API和树模型,并通过示例演示了如何使用Jackson进行JSON解析和生成。最后,作者分享了一些实用的代码片段和使用技巧,帮助读者更好地理解和应用这些工具。
在Java中处理JSON数据:Jackson与Gson库比较
|
3月前
|
XML 存储 JSON
Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
本文介绍了Twaver HTML5中的数据序列化,包括XML和JSON格式的序列化与反序列化方法。文章通过示例代码展示了如何将DataBox中的数据序列化为XML和JSON字符串,以及如何从这些字符串中反序列化数据,重建DataBox中的对象。此外,还提到了用户自定义属性的序列化注册方法。
47 1
|
2月前
|
JSON JavaScript API
(API接口系列)商品详情数据封装接口json数据格式分析
在成长的路上,我们都是同行者。这篇关于商品详情API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦!
|
2月前
|
JSON 前端开发 Java
【Spring】“请求“ 之传递 JSON 数据
【Spring】“请求“ 之传递 JSON 数据
87 2