none
新手在c#入门门口徘徊几个月,研究半年度不明白,xml到底用在哪里? RRS feed

  • 问题

  • 新手在c#入门门口徘徊几个月,研究半年度不明白,xml到底用在哪里?
    网上查,查不明白,都迷糊了,只好在这里 跟大家请教,
    我只知道xml 是个可扩展性语言,就像一本书的目录一样的。。。
    哎。。。到底怎么个说法,有人能告诉我吗?用在哪里?具体点哦。。。
    谢谢
    菜鸟在茫茫大海中迷失方向~~~~~55555555
    2009年6月12日 7:19

答案

  • 呵呵 Xml 是Extensible Markup Language 可扩展性标记语言的简称

    由于它可以跨平台 同时各种语言都有完善的解析功能,普遍的用于WebSerivce、UML、WML中
    其实你查看XAML以及配置文件web.config,以及页面中等无处不在.....

    我自己经常用到Xml的主要地方有以下几个:
    1,XML+XSLT来制作模板,如asp的动网论坛的模板引擎、以及动易的标签等都大致采用了这种思路
    2,定义自己的配置文件 通过XmlSerializer反串行化和串行化进行
    3,WebService
    4,rss
    等.....
    Denn ich gehor nur dir!坚持不懈!http://hi.baidu.com/1987raymond
    2009年6月12日 7:37
    版主
  • 你好,这么理解,可能你会明白些,Xml看作一种数据库文件,这个数据文件比较特殊,与Sql Server,Access等不一样,不需要其他软件就可以读取数据。这个特性使其成为各个平台和软件交互数据的中介。那么既然是中介,那就要做好规则,也就是Xml语言的语法,好方便大家相互读取正确的数据。
    邹俊才
    2009年6月12日 9:58
    版主
  • 楼上几位说了那么多,其实也是对的,但是对于你,我相信如果你会在网上找,就应该知道他们说的。。

    所以我看你还是不要心急,等你用到了的时候就会了解了。XML其实就是数据交换的东西,现在WebService用的比较多,比如你用校内或者开心网,这些网站或多或少的都开放了平台,你可以使用他们提供的API获取信息,比如校内的好友的信息,你发送一个请求到校内,然后校内会返回给你一个XML,例如

    <friends>
    <id>0000001</id>
    <id>0000002</id>
    ..
    ..
    </friends>

    然后你通过这个XML再处理一下,获取你自己的信息,这样无论是C#,C++,PHP还是什么都能处理了,其实XML就是一个数据库形式,当然你说为什么非要用XML,我觉得,现在数据库很多,例如SQL,ORACLE,DB2等等等等,都没一个统一的标准,XML在这方面还是不错的,是大家一个共识。。

    其实XML既然你没用到,你就不必太担心或者放到XML这上面,有时候,船到桥头自然直。 :)

    低调,低调
    哈哈,书出了,可以点这里购买哦。。
    尽力回答每一个问题,但不代表一定正确,希望初学者能够多自己尝试。。共勉。。:)
    2009年6月12日 10:13
    版主
  •    hi,
      学习也讲流程:
    1.现了解概念。
    2.在考虑用途。
    这样学习就不会太难。它是是么,有是么特点,用来干什么,等扥,一系列问题就清晰了。

       1)   XML是用来表示数据的数据。 XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。
       这些优势决定了他应用的领域很多。
     2)既然有很多有点,自然就有用武之地。config文件、数据传输.很多。比.Net Remoting、Web Service、WCF 等等。就好比是世界语。你想和老外交流,大家最好都使用这个语言。即使你不和老外交流,你也可以单独在自己的系统内使用这个语言。
    3)主要这个已经成为一个标准。大家都支持。所以才会应用很广泛。它和别的语言一样,都是语言,只是用处不一样。
     4)其实最好的学习办法就是自己查阅资料。最好找点权威点的。因为每个人技术都不一样,而且了解的范围也不同。所以你只能参考。


    下面给你推荐几个连接。
    1.http://www.w3.org/TR/REC-xml/
    2.http://baike.baidu.com/view/63.htm
    这个是定义:
        XML与Access,OracleSQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。
      XML与HTML的设计区别是:XML是用来存储数据的,重在数据本身。而HTML是用来定义数据的,重在数据的显示模式。
      XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。
      为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。
      因为XML是W3C制定的,XML的标准化工作由W3C的XML工作组负责,该小组成员由来自各个地方和行业的专家组成,他们通过email交流对XML标准的意见,并提出自己的看法 (www.w3.org/TR/WD-xml)。因为XML 是个公共格式, (它不专属于任何一家公司),你不必担心XML技术会成为少数公司的盈利工具,XML不是一个依附于特定浏览器的语言

      
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://www.cnblogs.com/frank_xl
    2009年6月12日 11:11
    版主
  • 其实你随时都在用,比如你的app.COnfig文件,aspx里面的文件本身就是xhtml(xml)格式的。文件放在哪里无所谓的。具体是什么时候使用,则要看 的需求了,不是说必须得用。

    xml的使用方法都在这里

    http://msdn.microsoft.com/zh-cn/xml/default.aspx


    http://msdn.microsoft.com/zh-cn/library/ms229335.aspx
    下的System.Xml名称空间下,里面有详细的例子

    http://msdn.microsoft.com/zh-cn/library/ms256177.aspx

    这3处的网址基本就可以解决你大部分的问题了

    【孟子E章】
    2009年6月13日 10:03
    版主
  • 简单的理解:xml就是用来数据的存储,数据的传输的。
    用处很广啊
    数据的存储--完全可以理解为小型的数据库(一个容器),用来保存数据并进行操作(直接写文件就ok了)。比如QQ用来保存登陆用户的信息,就可以用xml(实际用的是.dat,意义是一样的)

    数据的传输--ajax,webservice....传输的可能不是文件,而是一种大家公认的数据格式。
    2009年6月18日 4:18
  • 楼上们的介绍都是正确的,是Xml使用的方方面面。我个人是将Xml理解为接口协议或接口规约,或是一门沟通的语言。有了它您就可以与外界沟通。也就实现了跨平台交流。
    例如Rss就是典范,所有的开发者只需要了解Rss规范就能开发出相互通讯的程序。而不用关心服务端和客户端的技术实现。
    还有就是Html它也是一个Xml的实例, 浏览器的开发商只要能符合W3c的规范就能显示网页。此外化工行业、医药行业都有其相应的规范。这些规范以Xml的形式表示。从而开发人员熟悉相应的规范就可以实现各平台见的数据交流和转换。
    既然是可扩展语言标记,则说明您可以自己创造出任意的xml规约,然后给它们冠以Rss或Xml或配置文档等名称。只是通常自己开发的东东很难成为某行业的标准罢了。
    2009年7月3日 6:59

全部回复

  • 呵呵 Xml 是Extensible Markup Language 可扩展性标记语言的简称

    由于它可以跨平台 同时各种语言都有完善的解析功能,普遍的用于WebSerivce、UML、WML中
    其实你查看XAML以及配置文件web.config,以及页面中等无处不在.....

    我自己经常用到Xml的主要地方有以下几个:
    1,XML+XSLT来制作模板,如asp的动网论坛的模板引擎、以及动易的标签等都大致采用了这种思路
    2,定义自己的配置文件 通过XmlSerializer反串行化和串行化进行
    3,WebService
    4,rss
    等.....
    Denn ich gehor nur dir!坚持不懈!http://hi.baidu.com/1987raymond
    2009年6月12日 7:37
    版主
  • 你好,这么理解,可能你会明白些,Xml看作一种数据库文件,这个数据文件比较特殊,与Sql Server,Access等不一样,不需要其他软件就可以读取数据。这个特性使其成为各个平台和软件交互数据的中介。那么既然是中介,那就要做好规则,也就是Xml语言的语法,好方便大家相互读取正确的数据。
    邹俊才
    2009年6月12日 9:58
    版主
  • 楼上几位说了那么多,其实也是对的,但是对于你,我相信如果你会在网上找,就应该知道他们说的。。

    所以我看你还是不要心急,等你用到了的时候就会了解了。XML其实就是数据交换的东西,现在WebService用的比较多,比如你用校内或者开心网,这些网站或多或少的都开放了平台,你可以使用他们提供的API获取信息,比如校内的好友的信息,你发送一个请求到校内,然后校内会返回给你一个XML,例如

    <friends>
    <id>0000001</id>
    <id>0000002</id>
    ..
    ..
    </friends>

    然后你通过这个XML再处理一下,获取你自己的信息,这样无论是C#,C++,PHP还是什么都能处理了,其实XML就是一个数据库形式,当然你说为什么非要用XML,我觉得,现在数据库很多,例如SQL,ORACLE,DB2等等等等,都没一个统一的标准,XML在这方面还是不错的,是大家一个共识。。

    其实XML既然你没用到,你就不必太担心或者放到XML这上面,有时候,船到桥头自然直。 :)

    低调,低调
    哈哈,书出了,可以点这里购买哦。。
    尽力回答每一个问题,但不代表一定正确,希望初学者能够多自己尝试。。共勉。。:)
    2009年6月12日 10:13
    版主
  •    hi,
      学习也讲流程:
    1.现了解概念。
    2.在考虑用途。
    这样学习就不会太难。它是是么,有是么特点,用来干什么,等扥,一系列问题就清晰了。

       1)   XML是用来表示数据的数据。 XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。
       这些优势决定了他应用的领域很多。
     2)既然有很多有点,自然就有用武之地。config文件、数据传输.很多。比.Net Remoting、Web Service、WCF 等等。就好比是世界语。你想和老外交流,大家最好都使用这个语言。即使你不和老外交流,你也可以单独在自己的系统内使用这个语言。
    3)主要这个已经成为一个标准。大家都支持。所以才会应用很广泛。它和别的语言一样,都是语言,只是用处不一样。
     4)其实最好的学习办法就是自己查阅资料。最好找点权威点的。因为每个人技术都不一样,而且了解的范围也不同。所以你只能参考。


    下面给你推荐几个连接。
    1.http://www.w3.org/TR/REC-xml/
    2.http://baike.baidu.com/view/63.htm
    这个是定义:
        XML与Access,OracleSQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。
      XML与HTML的设计区别是:XML是用来存储数据的,重在数据本身。而HTML是用来定义数据的,重在数据的显示模式。
      XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。
      为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。
      因为XML是W3C制定的,XML的标准化工作由W3C的XML工作组负责,该小组成员由来自各个地方和行业的专家组成,他们通过email交流对XML标准的意见,并提出自己的看法 (www.w3.org/TR/WD-xml)。因为XML 是个公共格式, (它不专属于任何一家公司),你不必担心XML技术会成为少数公司的盈利工具,XML不是一个依附于特定浏览器的语言

      
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://www.cnblogs.com/frank_xl
    2009年6月12日 11:11
    版主
  • <friends>
    <id>0000001</id>
    <id>0000002</id>
    ..
    ..
    </friends>

    然后你通过这个XML再处理一下,获取你自己的信息,这样无论是C#,C++,PHP还是什么都能处理。。。

    ==== 咋处理啊?用什么办法?要是开发一门网站,在vs2008里开发时候放在哪里?
    2009年6月12日 14:55
  • 你好,你可以放在网站目录的下除特殊文件夹(如:App_Code)的任何地方,不支持XML文件的语言会当作文件处理,没有什么影响,只要能访问这个文件就可以了。
    邹俊才
    • 已建议为答案 Ricky.HQB 2009年7月18日 14:00
    2009年6月12日 16:06
    版主
  • 其实你随时都在用,比如你的app.COnfig文件,aspx里面的文件本身就是xhtml(xml)格式的。文件放在哪里无所谓的。具体是什么时候使用,则要看 的需求了,不是说必须得用。

    xml的使用方法都在这里

    http://msdn.microsoft.com/zh-cn/xml/default.aspx


    http://msdn.microsoft.com/zh-cn/library/ms229335.aspx
    下的System.Xml名称空间下,里面有详细的例子

    http://msdn.microsoft.com/zh-cn/library/ms256177.aspx

    这3处的网址基本就可以解决你大部分的问题了

    【孟子E章】
    2009年6月13日 10:03
    版主
  • XML就是一个有格式的文本文件!
    邹俊才
    2009年6月16日 17:21
    版主
  • 简单的理解:xml就是用来数据的存储,数据的传输的。
    用处很广啊
    数据的存储--完全可以理解为小型的数据库(一个容器),用来保存数据并进行操作(直接写文件就ok了)。比如QQ用来保存登陆用户的信息,就可以用xml(实际用的是.dat,意义是一样的)

    数据的传输--ajax,webservice....传输的可能不是文件,而是一种大家公认的数据格式。
    2009年6月18日 4:18
  • 用在常用数据显示,数据存储等处理,不适合大量数据
    I like I DO 微软技术的忠实拥护者
    2009年7月1日 14:09
  • 楼上们的介绍都是正确的,是Xml使用的方方面面。我个人是将Xml理解为接口协议或接口规约,或是一门沟通的语言。有了它您就可以与外界沟通。也就实现了跨平台交流。
    例如Rss就是典范,所有的开发者只需要了解Rss规范就能开发出相互通讯的程序。而不用关心服务端和客户端的技术实现。
    还有就是Html它也是一个Xml的实例, 浏览器的开发商只要能符合W3c的规范就能显示网页。此外化工行业、医药行业都有其相应的规范。这些规范以Xml的形式表示。从而开发人员熟悉相应的规范就可以实现各平台见的数据交流和转换。
    既然是可扩展语言标记,则说明您可以自己创造出任意的xml规约,然后给它们冠以Rss或Xml或配置文档等名称。只是通常自己开发的东东很难成为某行业的标准罢了。
    2009年7月3日 6:59