- 浏览: 223757 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (163)
- c++ (30)
- JavaScript (30)
- java (61)
- jQuery (3)
- ACE (2)
- oracle (9)
- jni (0)
- android (2)
- shell (1)
- myeclipse (1)
- Hibernate (1)
- linux (2)
- sqlserver (2)
- windows (2)
- sql (2)
- php (2)
- css (1)
- 学习 (1)
- ExtJs (1)
- RSS (1)
- 报文 (1)
- 跟我学Spring3 (6)
- dos (1)
- server (1)
- nosql (4)
- mongodb (6)
- photoshop (1)
- WebService (2)
- 股票 (1)
- OpenGL (3)
- Spring3MVC (6)
- 生活 (1)
- struts2 (1)
- 云盘 (1)
- blog (1)
- nosql nodejs mongoose (1)
最新评论
-
sblig:
配置分片: mongo -port 27017config ...
搭建Mongodb集群:分片Sharding+副本集Replica Set -
sblig:
配置路由:mongs: 40000 40100 40200sc ...
搭建Mongodb集群:分片Sharding+副本集Replica Set -
fuanyu:
哥们,干得漂亮。。
struts2 高危漏洞修复 -
sblig:
配置列子如下
<?xml version="1 ...
跟我学Spring3 学习笔记一 -
sblig:
307622798 写道博主你好,最近在看你的js系列文章,发 ...
JavaScript 学习笔记 二 对象的访问
package com.util; import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; /** * JSON utility class * * @since 2008-04-21 */ public class Json { // test public static void main(String[] args) { Json json1 = new Json(); json1.add("totalCount", 2); json1.add("isTest", true); Json json_a = new Json(); json_a.add("menuid", 1); json_a.add("menuname", "testmenu"); json1.add("topics", json_a); Json json_b = new Json(); json_b.add("menuid", 2); json_b.add("menuname", "testmenu"); json1.add("topics", json_b); System.out.println(json1.toString()); } private Map map = new LinkedHashMap(); /** * 添加一个 JSON 属性,值为一个字符串,重复添加时产生数组<p/> * * add("name", "value");<br/> * 添加一个字符串,产生的 JSON 如:{"name":"value"}<p/> * * add("name", "value1");<br/> * add("name", "value2");<br/> * 添加两个同属性的字符串,产生的 JSON 如:{"name":["value1", "value2"]}<p/> * * @param key JSON 属性名 * @param str 字符串格式的属性值 */ public void add(String key, String value) { addElement(key, value); } public void add(String key, int num) { addElement(key, new Integer(num)); } public void add(String key, boolean b) { addElement(key, new Boolean(b)); } /** * 添加一个 JSON 属性,值为一个 JSON,重复添加时产生 JSON 数组<p/> * * Json json1 = new Json();<br/> * json1.add("name1", "value1");<br/> * json1.add("name2", "value2");<br/> * Json json = new Json();<br/> * json.add("message", json1);<br/> * 添加一个 JSON,产生的 JSON 如:{"message":{"name1":"value1", "name2":"value2"}}<p/> * * Json json1 = new Json();<br/> * json1.add("name1", "value1");<br/> * json1.add("name2", "value2");<br/> * Json json2 = new Json();<br/> * json2.add("name1", "value3");<br/> * json2.add("name2", "value4");<br/> * Json json = new Json();<br/> * json.add("message", json1);<br/> * json.add("message", json2);<br/> * 添加两个同属性的 JSON,产生的 JSON 如:{"message":[{"name1":"value1", "name2":"value2"}, {"name1":"value3", "name2":"value4"}]}<p/> * * @param key JSON 属性名 * @param json JSON 格式的属性值 */ public void add(String key, Json json) { addElement(key, json); } public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); int k = 0; for (Iterator i = map.keySet().iterator(); i.hasNext();) { String key = (String)(i.next()); Object obj = map.get(key); if (k > 0) { sb.append(","); } appendKey(sb, key); if (obj instanceof String) { appendString(sb, (String)obj); } else if (obj instanceof List) { appendList(sb, (List)obj); } else if (obj instanceof Json) { appendJson(sb, (Json)obj); } else { appendOther(sb, obj); } k++; } sb.append("}"); return sb.toString(); } private void addElement(String key, Object obj) { if (!map.containsKey(key)) { if(obj instanceof Json) { List list = new ArrayList(); list.add(obj); map.put(key, list); } else { map.put(key, obj); } return; } Object o = map.remove(key); if (o instanceof List) { ((List)o).add(obj); map.put(key, o); return; } // o is a String List list = new ArrayList(); list.add(o); list.add(obj); map.put(key, list); } /** * Append JSON property name * * @param sb * @param key */ private void appendKey(StringBuilder sb, String key) { sb.append("\"").append(key).append("\":"); } /** * Append JSON property value that is a String * * @param sb * @param str */ private void appendString(StringBuilder sb, String str) { sb.append("\"").append(str).append("\""); } /** * Append JSON property value that is a Integer * * @param sb * @param num */ private void appendOther(StringBuilder sb, Object obj) { sb.append(obj); } /** * Append JSON property value that is a List * * @param sb * @param list */ private void appendList(StringBuilder sb, List list) { sb.append("["); for (int j = 0, m = list.size(); j < m; j++) { if (j > 0) { sb.append(","); } Object obj = list.get(j); if (obj instanceof String) { appendString(sb, (String)obj); } else if (obj instanceof Json) { appendJson(sb, (Json)obj); } else { appendOther(sb, obj); } } sb.append("]"); } /** * Append JSON property value that is a JSON * * @param sb * @param json */ private void appendJson(StringBuilder sb, Json json) { sb.append(json.toString()); } }
发表评论
-
[Java性能剖析]远程调试配置
2014-07-10 10:48 800一、服务器操作如下: 找到文件:apache-tomcat-5 ... -
[jdk工具命令]Java SE 文档
2014-07-10 10:43 774oracle java se documentation j ... -
[jdk命令工具]jconsole远程项目监控
2014-07-10 10:37 780入口:catalina.sh JAVA_OPTS=&quo ... -
[jvm参数]JVM简单配置
2014-07-10 10:35 1221-Xms256m -Xmx512M -XX:MaxPermSi ... -
struts2 高危漏洞修复
2013-07-23 10:30 11861. /** * 过滤器 */ ... -
转:调查服务器响应时间的利器 tcprstat
2012-11-16 13:50 1482http://rdc.taobao.com/blog/cs/? ... -
跟我学Spring3 学习笔记七 初始化与销毁
2012-10-18 16:45 2089最后 遗留一个问题, ... -
跟我学Spring3 学习笔记六 注入
2012-10-18 14:31 2227跟我学Spring3 学习笔 ... -
动态生成class
2012-10-16 11:17 1365ASM 进行动态生成class import org.obj ... -
FtpUtil ftp工具类 过滤文件名
2012-10-10 16:25 6941工具类: import java.io.Buff ... -
java 高性能网络编程 NIO
2012-09-28 16:31 1515服务器端: // 1. 分配一个 Serve ... -
java 高性能网络编程 mina
2012-09-28 10:52 1684服务器端: // 创建一个非阻塞的server端so ... -
代理 下载网页,挖掘数据
2012-09-25 13:51 894URL url = new URL("http:// ... -
java nio 编程学习 一
2012-09-21 16:08 1174Java.nio中的主要类ServerSocketChanne ... -
MongoDB 实战笔记 四
2012-09-20 14:12 1137import java.net.UnknownHostExce ... -
MongoDB 实战笔记 三
2012-09-20 13:37 2471导出mongoexport -d m ... -
MongoDB 实战笔记 二
2012-09-20 11:45 933MongoDB 实战笔记 count 查询记录 ... -
MongoDB 实战笔记 一
2012-09-20 11:30 1176MongoDB 实战笔记 来建立一个 test 的集 ... -
Struts 学习笔记 二
2012-09-17 16:56 873login.jsp 登陆页面 <html:form ac ... -
Struts 学习笔记 一
2012-09-14 15:36 1142struts 1.2 涉及到的包: commons-b ...
相关推荐
/// 将Json字符串解析为C#中的对象 /// Json格式中的字符串值识别 /// 将Json字符串解析为Dictionary, dynamic>对象。 /// 将Json字符串解析为dynamic[]对象。 /// Dictionary类型对象转换为Json格式字符串 /// C#...
标准json字符串编码使用unicode,即boost 提供的 中拼接起来的字符串采用unicode字符集编码,而很多网页采用编码为utf8。 这个库字符编码采用系统编码,系统采用utf8字符集的话拼接起来字符串就是ut8了;另外在博客...
整理文档,搜刮出一个jquery拼接ajax 的json和字符串拼接的代码,稍微整理精简一下做下分享。 jQuery拼接字符串ajax <form id="myForm" action="#"> <input name="name"/> <input name="age"/>...
在"多层集合的JSON串拼接"这个主题中,我们主要关注的是如何将多个JSON对象或数组合并成一个复杂结构的JSON字符串。这通常涉及到后台Java的处理和前台JavaScript的调用。以下是一些关键知识点: 1. **JSON对象与...
本文将深入探讨Pbjson的使用方法、原理以及它如何处理Json字符串的生成与解析。 首先,让我们了解一下什么是protobuf。Protocol Buffers是Google推出的一种数据序列化协议,它允许我们将结构化数据序列化为二进制...
在C语言中,处理JSON字符串涉及到解析JSON文本为数据结构,以及将数据结构转换为JSON字符串。以下是对C语言中JSON字符串生成与解析的详细说明: 1. JSON数据格式: JSON是一种基于文本的格式,它使用键值对来表示...
C++作为一款强大的系统编程语言,虽然原生并不支持JSON解析,但有多种库可以用来处理JSON字符串。本主题将深入探讨如何在C++中解析JSON字符串,主要涉及以下几个知识点: 1. **JSON基本结构**:JSON数据由键值对...
给出的C#代码片段展示了如何将`DataTable`对象转换为JSON字符串。`DataTable`是.NET Framework中用于存储、检索和操作数据的一种方式,类似于关系数据库中的表。让我们逐行分析代码: ```csharp public static ...
1. **解析JSON字符串**:首先,我们需要使用JSON库解析JSON字符串,将其转化为JSON对象或JSON数组。例如,`json-lib`库提供了`JsonUtil`类,可以将JSON字符串转换为Java集合对象,如List或Map。 2. **转换数据结构*...
例如,尝试访问不存在的键或解析无效的JSON字符串都会抛出这个异常。 在给定的压缩包文件“JSON(1)”中,可能包含了多个JSON文件示例,你可以使用`JSONObject`来读取、解析和操作这些文件,实现JSON数据的拼接和...
vb6 collection dictionary与json字符串间转换
对比两个JSON对象,可以使用Jackson库的ObjectMapper或者Gson库的fromJson方法将JSON字符串转换为Java对象,然后进行对象间的比较。也可以使用专门的JSON对比工具,如json-unit,它提供了一套API来比较两个JSON对象...
### 下载JSON时如何拼接JSON字符串 在互联网项目的开发过程中,经常需要处理JSON数据的生成与下载。本文将详细解析一个具体的示例代码,并基于此示例介绍如何正确地构建JSON字符串,以便于后续的数据处理及下载操作...
例如,使用Gson库,你可以创建一个`Blog`类来表示博客信息,然后将二维数组转换为`List<Blog>`,再使用Gson的`toJson`方法生成JSON字符串: ```java import com.google.gson.Gson; public class Blog { private ...
接着,我们使用一个for循环遍历tr元素,并在每次循环中获取td元素数组,然后使用拼接的方式将数据拼成JSON字符串。最后,我们使用substring方法将拼接的JSON字符串截断,形成一个完整的JSON数组。 在该示例中,我们...
JSON拼接是指将多个JSON对象或数组合并成一个单一的JSON字符串。在JavaScript中,我们可以使用内置的`JSON.stringify()`方法来将JavaScript对象转换为JSON字符串,然后通过字符串操作进行拼接。例如: ```...
为了将DataTable转换为Json数据,我们可以使用StringBuilder来拼接Json字符串。下面是一个示例代码: ```csharp public static string DataTableToJson1(string jsonName, DataTable dt) { StringBuilder Json = ...
字符串操作是编程中的基本任务,包括拼接、分割、查找、替换等。 接着,我们转向二维码。二维码(Quick Response Code)是一种源自日本的二维条形码,它由黑白相间的模块组成,能够存储文本、网址、联系信息等多种...
1. **对象转JSON字符串**: `object2json`方法是整个工具类的核心,它接受一个`Object`类型的参数`obj`,根据`obj`的类型来决定如何将其转换为JSON字符串。如果对象为null,它返回一个空字符串。对于基本数据类型...
// 解析JSON字符串为JSONObject JSONObject subObject = (JSONObject) parser.parse(jsonContent); // 遍历JSON对象的键值对 Iterator<String> itt = subObject.keySet().iterator(); while (itt.hasNext()) { ...