- 浏览: 277083 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
zhuzhuhenzhencheng:
密码是什么啊
Ext表格(Grid)上面的悬浮提示 -
鹿惊_:
确实如雪中送炭般温暖!
Ext扩展整理后吐血奉献 -
ortega1_2_3:
该版本貌似有bug,当sockIOPool的自平衡线程self ...
Java MemCached Window简单实现 -
q6952592:
好。解决了我的兼容模式下出现的问题。
Ext表格(Grid)上面的悬浮提示 -
fei33423:
请参考 fei33423的文章 java中直接调用groovy ...
Groovy应用(Java与Groovy间相互调用)
直接上代码
xmlToJson={ parser:function(xmlcode,ignoretags,debug){ if(!ignoretags){ignoretags=""}; xmlcode=xmlcode.replace(/\s*\/>/g,'/>'); xmlcode=xmlcode.replace(/<\?[^>]*>/g,"").replace(/<\![^>]*>/g,""); if (!ignoretags.sort){ignoretags=ignoretags.split(",")}; var x=this.no_fast_endings(xmlcode); x=this.attris_to_tags(x); x=escape(x); x=x.split("%3C").join("<").split("%3E").join(">").split("%3D").join("=").split("%22").join("\""); for (var i=0;i<ignoretags.length;i++){ x=x.replace(new RegExp("<"+ignoretags[i]+">","g"),"*$**"+ignoretags[i]+"**$*"); x=x.replace(new RegExp("</"+ignoretags[i]+">","g"),"*$***"+ignoretags[i]+"**$*") }; x='<JSONTAGWRAPPER>'+x+'</JSONTAGWRAPPER>'; this.xmlobject={}; var y=this.xml_to_object(x).jsontagwrapper; if(debug){y=this.show_json_structure(y,debug)}; return y }, xml_to_object:function(xmlcode){ var x=xmlcode.replace(/<\//g,'?'); x=x.split("<"); var y=[]; var level=0; var opentags=[]; for (var i=1;i<x.length;i++){ var tagname=x[i].split(">")[0]; opentags.push(tagname); level++ y.push(level+"<"+x[i].split("?")[0]); while(x[i].indexOf("?"+opentags[opentags.length-1]+">")>=0){level--;opentags.pop()} }; var oldniva=-1; var objname="this.xmlobject"; for (var i=0;i<y.length;i++){ var preeval=""; var niva=y[i].split("<")[0]; var tagnamn=y[i].split("<")[1].split(">")[0]; tagnamn=tagnamn.toLowerCase(); var rest=y[i].split(">")[1]; if(niva<=oldniva){ var tabort=oldniva-niva+1; for (var j=0;j<tabort;j++){objname=objname.substring(0,objname.lastIndexOf("."))} }; objname+="."+tagnamn; var pobject=objname.substring(0,objname.lastIndexOf(".")); if (eval("typeof "+pobject) != "object"){preeval+=pobject+"={value:"+pobject+"};\n"}; var objlast=objname.substring(objname.lastIndexOf(".")+1); var already=false; for (k in eval(pobject)){if(k==objlast){already=true}}; var onlywhites=true; for(var s=0;s<rest.length;s+=3){ if(rest.charAt(s)!="%"){onlywhites=false} }; if (rest!="" && !onlywhites){ if(rest/1!=rest){ rest="'"+rest.replace(/\'/g,"\\'")+"'"; rest=rest.replace(/\*\$\*\*\*/g,"</"); rest=rest.replace(/\*\$\*\*/g,"<"); rest=rest.replace(/\*\*\$\*/g,">") } } else {rest="{}"}; if(rest.charAt(0)=="'"){rest='unescape('+rest+')'}; if (already && !eval(objname+".sort")){preeval+=objname+"=["+objname+"];\n"}; var before="=";after=""; if (already){before=".push(";after=")"}; var toeval=preeval+objname+before+rest+after; eval(toeval); if(eval(objname+".sort")){objname+="["+eval(objname+".length-1")+"]"}; oldniva=niva }; return this.xmlobject }, show_json_structure:function(obj,debug,l){ var x=''; if (obj.sort){x+="[\n"} else {x+="{\n"}; for (var i in obj){ if (!obj.sort){x+=i+":"}; if (typeof obj[i] == "object"){ x+=this.show_json_structure(obj[i],false,1) } else { if(typeof obj[i]=="function"){ var v=obj[i]+""; //v=v.replace(/\t/g,""); x+=v } else if(typeof obj[i]!="string"){x+=obj[i]+",\n"} else {x+="'"+obj[i].replace(/\'/g,"\\'").replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r")+"',\n"} } }; if (obj.sort){x+="],\n"} else {x+="},\n"}; if (!l){ x=x.substring(0,x.lastIndexOf(",")); x=x.replace(new RegExp(",\n}","g"),"\n}"); x=x.replace(new RegExp(",\n]","g"),"\n]"); var y=x.split("\n");x=""; var lvl=0; for (var i=0;i<y.length;i++){ if(y[i].indexOf("}")>=0 || y[i].indexOf("]")>=0){lvl--}; tabs="";for(var j=0;j<lvl;j++){tabs+="\t"}; x+=tabs+y[i]+"\n"; if(y[i].indexOf("{")>=0 || y[i].indexOf("[")>=0){lvl++} }; if(debug=="html"){ x=x.replace(/</g,"<").replace(/>/g,">"); x=x.replace(/\n/g,"<BR>").replace(/\t/g," ") }; if (debug=="compact"){x=x.replace(/\n/g,"").replace(/\t/g,"")} }; return x }, no_fast_endings:function(x){ x=x.split("/>"); for (var i=1;i<x.length;i++){ var t=x[i-1].substring(x[i-1].lastIndexOf("<")+1).split(" ")[0]; x[i]="></"+t+">"+x[i] } ; x=x.join(""); return x }, attris_to_tags: function(x){ var d=' ="\''.split(""); x=x.split(">"); for (var i=0;i<x.length;i++){ var temp=x[i].split("<"); for (var r=0;r<4;r++){temp[0]=temp[0].replace(new RegExp(d[r],"g"),"_jsonconvtemp"+r+"_")}; if(temp[1]){ temp[1]=temp[1].replace(/'/g,'"'); temp[1]=temp[1].split('"'); for (var j=1;j<temp[1].length;j+=2){ for (var r=0;r<4;r++){temp[1][j]=temp[1][j].replace(new RegExp(d[r],"g"),"_jsonconvtemp"+r+"_")} }; temp[1]=temp[1].join('"') }; x[i]=temp.join("<") }; x=x.join(">"); x=x.replace(/ ([^=]*)=([^ |>]*)/g,"><$1>$2</$1"); x=x.replace(/>"/g,">").replace(/"</g,"<"); for (var r=0;r<4;r++){x=x.replace(new RegExp("_jsonconvtemp"+r+"_","g"),d[r])} ; return x } }; if(!Array.prototype.push){ Array.prototype.push=function(x){ this[this.length]=x; return true } }; if (!Array.prototype.pop){ Array.prototype.pop=function(){ var response = this[this.length-1]; this.length--; return response } }; myJsonObject=xmlToJson.parser(str);
- xmlToJson.rar (2.1 KB)
- 下载次数: 283
评论
5 楼
a591462256
2013-08-23
密码是什么?
4 楼
AsFirstSight
2012-12-04
好东西啊
3 楼
taoge2121
2012-10-06
好东西!!!!
2 楼
laodaobazi
2012-05-17
graydawn 写道
密码是什么呢?
应该是jlee
1 楼
graydawn
2012-05-16
密码是什么呢?
发表评论
-
JSON查看工具
2012-03-09 22:26 0Eclipse 的json插件: 这款插件主要功能是把jso ... -
gzip压缩JavaScript
2012-02-13 17:14 5750为了提高客户端的体验效果,RIA开发逐渐兴起。这样 ... -
Ext扩展整理后吐血奉献
2012-01-19 13:58 7206对 Ext 扩展的一些小总结 1、multicombo (多 ... -
JSON LIB转化时间
2011-11-02 09:32 1385Ext Grid显示Json lib 转化时间为object的 ... -
JS计算日期差
2011-09-24 14:04 1622function Computation(sDate1,sDa ... -
将Air文件转换为EXE进行部署
2011-06-14 17:21 1740如果你的air sdk还没有升级到2.0 那显然是不行的. ... -
禁止IE的backspace键(退格键),但输入文本框时不禁止
2011-06-09 09:59 3704Ext实现方式: Ext.getDoc().on('keyd ... -
Ext中集成在线编辑器Ext.ux.TinyMCE
2011-05-31 15:46 3111Ext.ux.TinyMCE第三方对Ext 在线编辑器的扩展, ... -
Ex的Ajax请求实现同步
2011-05-31 15:29 1370Ext2,.x的Ajax实现同步 Ext.lib.Ajax. ... -
Ext表格(Grid)上面的悬浮提示
2011-05-30 16:36 7635方法一 使用render //鼠标放在Grid上面显示提示 ... -
开发者最容易犯的13个JavaScript错误
2011-04-25 10:28 7261.for.. 数组迭代的用法 U ... -
Ext皮肤切换
2011-04-22 10:46 3358/** * @author JLee * @since ... -
JS获取屏幕大小
2011-04-18 16:56 1252<html> <script> f ... -
在js中对中文和特殊字符转码
2011-04-14 14:21 3960直接上代码 js对文字进行编码涉及3个函数:escape,e ... -
Aptana 构建 Air 项目(集成ExtJS)
2011-03-17 01:00 34911、安装Aptana IDE ... -
XTemplate
2011-03-16 14:07 4575Ext XTemplate的应用: template. ... -
读取Properties文件中的内容填充本地combo
2011-03-10 16:24 1857首先定义一个properties文件放到classpath路径 ... -
汉字转换为拼音
2011-03-09 10:11 4616首先定义一个html页面: ... -
Ext Grid 实现批量添加或者修改
2011-03-02 22:30 4530将ExtJS Grid 中的record逐一转化为Bean,实 ... -
ExtJS中submit与Ajax的success
2010-11-12 23:10 7922Ajax中使用Success使用response接收后台传来的 ...
相关推荐
标题中的“Node.js-用于将XML转换为JSON和JSON到XML的Android库”指的是一个针对Android平台的开发库,该库允许开发者在Android应用中进行XML与JSON之间的转换。XML(Extensible Markup Language)是一种结构化数据...
本篇文章将深入探讨如何将XML数据转换为JSON,特别是利用json-lib库进行转换。 首先,我们需要理解XML和JSON的基本结构。XML是一种标记语言,使用标签来定义元素和属性,可以嵌套结构,支持自定义的命名空间。JSON...
2. **递归转换JSON**:从JSON根对象开始,递归地将每个键值对转换成XML元素。 3. **处理数据类型**:JSON支持各种数据类型,如字符串、数字、布尔值等,需要适当地转换为XML元素或属性。 4. **处理数组**:当遇到...
"XML转换为JSON"的过程是将XML格式的数据转换成JSON格式,以便于在支持JSON的环境中更好地处理和传输。这个过程通常涉及到以下几个关键步骤: 1. **解析XML**:首先,我们需要解析XML文档,将其解析成一个解析树或...
xml字符串转换json格式 可用于微信小程序xml字符串转换json格式 安装 npm方式安装 npm install --save xmlstring2json bower方式安装 bower install xmlstring2json 用法示例: bookstore.xml文件 <title>...
在使用Ajax的时候,通常是将数据以XML的格式返回客户端,然后使用Javascript解析DOM结构。但W3C自带的方法和属性在操作的时候...处理一般的XML,可以通过以下的方法,将XML转换成JSON后,访问节点的时候格式很简单。
xml转换为json的js库文件
`jquery.json2xml.js` 脚本允许开发者将JSON对象转换为XML字符串。在JavaScript中,你可以通过创建一个JSON对象,然后调用这个插件的方法,将其转换成XML格式。这样可以方便地将JSON数据发送到服务器,或者在需要XML...
在处理XML数据时,可以利用"xmldom"来解析和操作XML,然后用"x2js"将其转换为JSON,以便在JavaScript环境中更便捷地处理。同样,当需要将JSON数据发送给服务器时,也可以使用"x2js"将JSON转换为XML格式。这样的工具...
本篇文章将详细介绍Java中如何实现XML和JSON的相互转换,并提供一个名为`XmlToJson.java`的工具类作为参考。 首先,XML是一种结构化的数据表示方式,它以树形结构存储数据,易于人类阅读和编写,同时也易于机器解析...
例如,在编辑器中,可能会需要将用户输入的XML格式内容转换为JSON格式进行存储或发送到服务器。 #### 三、关键函数分析 根据给定的内容,我们可以分析出几个关键函数: 1. **`loadXML(xmlString)`**: - **功能*...
- JQuery - jquery.json2xml.js - jquery.xml2json.js 2. XML 字符串转换成 JSON 对象 $.xml2json(str); 3. JSON 对象转换成 XML 字符串 $.json2xml(obj);
"blackmagic"的工作原理是解析XML文档,将其转化为JavaScript对象,然后可以将这个对象序列化成JSON字符串。相反,它也可以将JSON字符串解析成JavaScript对象,再将其转换为XML。这个过程涉及到了XML解析器和JSON编...
JSON-to-XML转换则是相反的过程,即把JSON数据转化为XML格式。这个过程涉及解析JSON对象,创建XML元素和属性。JavaScript中,可以使用`json2xml`或`xmlbuilder`等库来完成这个任务。例如,`xmlbuilder`可以创建一个...
标题中的"xml转换json数据类"指的是一个编程类库,它提供了将XML数据转换为JSON数据的功能。这个类库可能适用于多种编程语言,如Java、Python、C#或JavaScript等,使得开发者能够轻松地在XML和JSON之间进行数据互换...
将XML转换为JSON的过程,主要是为了适应不同的需求或优化数据处理效率。 首先,让我们来了解一下XML到JSON转换的基本概念。XML是一种自描述的、树形的数据结构,包含元素、属性和文本内容等组件。JSON则是一种轻量...
在XML到JSON转换过程中,XStream可能首先用于将XML数据转换为Java对象,然后这些对象再由Json-lib处理成JSON格式。 XML到JSON的转换通常包括以下步骤: - 解析XML文档,将其转换为DOM(Document Object Model)树。...
在这个场景中,我们将探讨如何使用XStream将XML文档转换成Java对象,进而转化为JSON对象。 首先,我们需要引入XStream库。XStream的核心功能是能够将Java对象和XML之间的映射自动化,极大地简化了序列化和反序列化...
`jquery.xml2json.js`是一个jQuery插件,它的主要功能是将XML文档转换为JavaScript对象,即JSON格式。这个插件的使用非常简单,首先需要在项目中引入jQuery库和`jquery.xml2json.js`文件。例如: ```html ...
本示例介绍如何使用JavaScript将XML对象转换为JSON对象,涉及的关键技术包括XML DOM操作、字符串处理以及递归遍历。 首先,我们需要将XML字符串转换为XML对象。在JavaScript中,可以通过`DOMParser`或jQuery的`$....