xml格式化工具linux(xml 格式化)
本文目录一览:
- 1、linux下如何用JS解析XML格式的字符串
- 2、linux (或unix) c语言怎么把字符串转换成xml (xml格式已经知道)
- 3、linux下用xerces生成XML文件的问题!高手进来哈!
- 4、什么叫xml格式?
- 5、请问如何在linux环境下将xml格式的文件转换成txt或者csv格式的文件 谢谢回答 最好写清楚点
- 6、如何用Linux 命令格式化xml文件
linux下如何用JS解析XML格式的字符串
//JS现在有叫做Ajax的技术,已经很成熟了,这是底层Ajax的实现,仅供参考
//如果应用,轻量级的,可以考虑JQuery封装的Ajax,JQuery考虑了主流浏览器的兼容性
var xHRObject = false;
if (window.XMLHttpRequest)//判断XMLHttpRequest,火狐等
{
xHRObject = new XMLHttpRequest();
}
else if (window.ActiveXObject)//判断ActiveXObject,即IE
{
xHRObject = new ActiveXObject("Microsoft.XMLHTTP");
}
function getData()
{
if ((xHRObject.readyState == 4) (xHRObject.status == 200))
{
//以下是对返回的XML进行解释处理
var serverResponse = xHRObject.responseXML;
var header = serverResponse.getElementsByTagName("book");
var spantag = document.getElementById("cart");
spantag.innerHTML = "";
for (i=0; iheader.length; i++)
{
if (window.ActiveXObject)
{
spantag.innerHTML += " " +header[0].firstChild.text;
spantag.innerHTML += " " + header[0].lastChild.text + " " + "a href='#' onclick='AddRemoveItem(\"Remove\");'Remove Item/a";
}
else
{
spantag.innerHTML += " " +header[0].firstChild.textContent;
spantag.innerHTML += " " + header[0].lastChild.textContent + " " + "a href='#' onclick='AddRemoveItem(\"Remove\");'Remove Item/a";
}
}
}
}
function AddRemoveItem(action)
{
var book = document.getElementById("book").innerHTML;
if(action=="Add")
{
xHRObject.open("GET", "ManageCart.aspx?action=" + action + "book=" + encodeURIComponent(book) + "value=" + Number(new Date), true);//此处可以改成指定的请求HTTP路径
}
else
{
xHRObject.open("GET", "ManageCart.aspx?action=" + action + "book=" + encodeURIComponent(book) + "value=" + Number(new Date), true);//此处可以改成指定的请求HTTP路径
}
xHRObject.onreadystatechange = getData;//绑定事件函数
xHRObject.send(null);//异步发送
}
linux (或unix) c语言怎么把字符串转换成xml (xml格式已经知道)
这种情况当然是选用第三方的xml解析库。
下载第三方的xml解析库。
既然已经知道定长截取,只要循环截取就行了。
int n;//n为你说的定长
int i = 0;
int position;
char temp[n];//c99支持变长数组,但是一般都不会支持,所以还是用动态分配,或者将n用宏定义
for(position = 0;positionlenth;++position)
{
++i;
if(i == n)
{
strncpy(temp,str,n);//从源字符串拷贝n个字符到目的字符串,函数原名不记得了,应该差不多这么个名儿
//向xml中插入数据
i = 0;
}
}
linux下用xerces生成XML文件的问题!高手进来哈!
恩,你好,这个问题我以前也遇到过,是在做下载程序的时候保存文件,下载的文件总是不全的,这是因为程序默认放到缓冲区里了,当进程关闭时才会保存在文件里。
推荐你使用以下两种方案,任选一种都可以:
1.system("sync");
sync是linux的一个命令
man 一下就可以了
sync - flush file system buffers
呵呵
就是把内存里的东西更新到硬盘上去而已
2.调用flush(); 输出缓冲区内的内容并且删除缓冲区
什么叫xml格式?
XML
是eXtensible Markup Language的缩写。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。
XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。
XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。
XML的前身是SGML(The Standard Generalized Markup Language),是自IBM从60年代就开始发展的GML(Generalized Markup Language)
同HTML一样, XML (可扩展标识语言)是通用标识语言标准(SGML)的一个子集,它是描述网络上的数据内容和结构的标准。尽管如此,XML不象HTML,HTML仅仅提供了在页面上显示信息的通用方法(没有上下文相关和动态功能) ,XML则对数据赋予上下文相关功能,它继承了SGML的大部分功能,却使用了不太复杂的技术。.
为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。
因为XML是W3C制定的,XML的标准化工作由W3C的XML工作组负责,该小组成员由来自各个地方和行业的专家组成,他们通过email交流对XML标准的意见,并提出自己的看法 ()。因为XML 是个公共格式, (它不专属于任何一家公司),你不必担心XML技术会成为少数公司的盈利工具,XML不是一个依附于特定浏览器的语言
XML(可扩展标记语言)是从称为SGML(标准通用标记语言)的更加古老的语言派生出来的。SGML的主要目的是定义使用标签来表示数据的标记语言的语法。
标签由包围在一个小于号()和一个大于号()之间的文本组成,例如tag。起始标签(start tag)表示一个特定区域的开始,例如start;结束标签(end tag)定义了一个区域的结束,除了在小于号之后紧跟着一个斜线(/)外,和起始标签基本一样,例如/end。SGML还定义了标签的特性(attribute),它们是定义在小于号和大于号之间的值,例如img src="picture.jpg"中的src特性。如果你觉得它看起来很熟悉的话,应该知道,基于SGML的语言的最著名实现就是原始的HTML。
SGML常用来定义针对HTML的文档类型定义(DTD),同时它也常用于编写XML的DTD。SGML的问题就在于,它允许出现一些奇怪的语法,这让创建HTML的解析器成为一个大难题:
q 某些起始标签不允许出现结束标签,例如HTML中img标签。包含了结束标签就会出现错误。
q 某些起始标签可以选择性出现结束标签或者隐含了结束标签,例如HTML中p标签,当出现另一个p标签或者某些其他标签时,便假设在这之前有一个结束标签。
q 某些起始标签要求必须出现结束标签,例如HTML中script标签。
q 标签可以以任何顺序嵌套。即使结束标签不按照起始标签的逆序出现也是允许的,例如,bThis is a i sample /b string/i是正确的。
q 某些特性要求必须包含值,例如img src="picture.jpg"中的src特性。
q 某些特性不要求一定有值,例如td nowrap中的nowrap特性。
q 定义特性的两边有没有加上双引号都是可以的,所以img src="picture.jpg"和img src=picture.jpg都是允许的。
这些问题使建立一个SGML语言的解析器变成了一项艰巨的任务。判断何时应用以上规则的困难导致了SGML语言的定义一直停滞不前。以这些问题作为出发点,XML逐渐步入我们的视野。
XML去掉了之前令许多开发人员头疼的SGML的随意语法。在XML中,采用了如下的语法:
q 任何的起始标签都必须有一个结束标签。
q 可以采用另一种简化语法,可以在一个标签中同时表示起始和结束标签。这种语法是在大于符号之前紧跟一个斜线(/),例如tag /。XML解析器会将其翻译成tag/tag。
q 标签必须按合适的顺序进行嵌套,所以结束标签必须按镜像顺序匹配起始标签,例如bthis is a isample/i string/b。这好比是将起始和结束标签看作是数学中的左右括号:在没有关闭所有的内部括号之前,是不能关闭外面的括号的。
q 所有的特性都必须有值。
q 所有的特性都必须在值的周围加上双引号。
这些规则使得开发一个XML解析器要简便得多,而且也除去了解析SGML中花在判断何时何地应用那些奇怪语法规则上的工作。仅仅在XML出现后的前六年就衍生出多种不同的语言,包括MathML、SVG、RDF、RSS、SOAP、XSLT、XSL-FO,而同时也将HTML改进为XHTML。
如果需要关于SGML和XML具体技术上的对比,请查看W3C的注解,位于:. org/TR/NOTE-sgml-xml.html
如今,XML已经是世界上发展最快的技术之一。它的主要目的是使用文本以结构化的方式来表示数据。在某些方面,XML文件也类似于数据库,提供数据的结构化视图。这里是一个XML文件的例子:
每个XML文档都由XML序言开始,在前面的代码中的第一行便是XML序言,?xml version="1.0"?。这一行代码会告诉解析器和浏览器,这个文件应该按照前面讨论过的XML规则进行解析。第二行代码,books,则是文档元素(document element),它是文件中最外面的标签(我们认为元素(element)是起始标签和结束标签之间的内容)。所有其他的标签必须包含在这个标签之内来组成一个有效的XML文件。XML文件的第二行并不一定要包含文档元素;如果有注释或者其他内容,文档元素可以迟些出现。
范例文件中的第三行代码是注释,你会发现它与HTML中使用的注释风格是一样的。这是XML从SGML中继承的语法元素之一。
页面再往下的一些地方,可以发现desc标签里有一些特殊的语法。![CDATA[ ]]代码用于表示无需进行解析的文本,允许诸如大于号和小于号之类的特殊字符包含在文本中,而无需担心破坏XML的语法。文本必须出现在![CDATA[和]]之间才能合适地避免被解析。这样的文本称为Character Data Section,简称CData Section。
下面的一行就是在第二本书的定义之前的:
?page render multiple authors ?
虽然它看上去很像XML序言,但实际上是一种称为处理指令(processing instruction)的不同类型的语法。处理指令(以下简称PI)的目的是为了给处理页面的程序(例如XML解析器)提供额外的信息。PI通常情况下是没有固定格式的,唯一的要求是紧随第一个问号必须至少有一个字母。在此之后,PI可以包含除了小于号和大于号之外的任何字符串序列。
最常见的PI是用来指定XML文件的样式表:
这个PI一般会直接放在XML序言之后,通常由Web浏览器使用,来将XML数据以特殊的样式显示出来。
如果你对XML感兴趣,想学习更多关于它及其应用的内容,请参见人民邮电出版社即将出版的《XML与DOM基础教程》。
请问如何在linux环境下将xml格式的文件转换成txt或者csv格式的文件 谢谢回答 最好写清楚点
可选的语言:c、java、perl、python、ruby这几个在linux下都可达到你的要求。至于选哪个要看你项目内的人员更擅长哪方面了。
如何用Linux 命令格式化xml文件
本经验介绍如何使用Notepad++软件格式XML文件。有些XML文件打开的时候,没有格式,都堆在前几行里面。利用Notepad++的Xml Tools插件,可以给这些XML文件进行格式化。
工具/原料
Notepad++
安装Xml Tools插件
1
启动Notepad++,按图所示进行操作。
2
在”plugin Manager“中找到”XML Tools“插件,点击”Install“按钮。
3
安装完插件后,会提示是否重启Notepad++来完成插件安装。可以根据情况决定。
END
使用XML Tools格式化XML文件
打开需要格式化的XML文件。本经验以slide 1.xml文件为例。可以看到slide 1.xml文件的内容都堆积到前两行了,看起来很不方便。
全选内容;然后选择按图所示进行操作。
Notepad++就会格式化XML文件了。