天天看點

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

人類社會,據馬克思所說,三要素:

生産力,生産關系和财富再配置設定。

雖然說,總體來說,我個人認為,财富再配置設定,是核心是重,但對于吊絲來說,還是關注一下生産力吧。至于爸爸是李剛剛的,考慮一下基它的吧。

生産力的核心,就是工具。

是以,做為一個程式員,掌握工具,是很重要的。以前我招人,也是理論和工具并重。一個不注重工具的人,往往是一個不注重實踐的人。趙括理論還不錯,但打起仗來,就不成。其中一個原因,就是實踐不夠,或是不重視實踐。

這裡我總結一下我自己的心理。如果你不幸進來看到我寫的文字,先忍一下我的羅索吧。

XML的工具,最近我用了用,幾個XMLSpy和LiquidXMLStudio是主要用的兩種。

********************

Let‘s Start:

先看一個網頁:

http://en.wikipedia.org/wiki/Comparison_of_XML_editors

這也是我的習慣。

不過這裡面的列,不是很全。

我是希望有幾個方面:

* 能生成C++代碼,這個功能在這裡被稱做:map。map的意思是說從xsd映射到代碼。當然,也有其它的含義,但一般不會用map,比如xml to xml, xml to DB. 都會寫清楚,但隻有map,現在看來就是這個意思。之是以,要生成C或C++代碼,是因為我底層的解析器就是用C寫的。不想在這個層面來轉換。

因為XML本身,才是接口資訊的承載。沒必要,再加入一種新語言。

* 如果生成的代碼,是基于開源的XML庫就更好的。

目前來看,經過調研,目前最好的XML開源庫,就是libxml2和xerces. 不過,總體來說,如果我自己來做,會選libxml2.

因為這個庫是基于C的,也便于跨平台。

* 其它的XML自動化編輯工具。這些就不用說了。

但事實上,沒有找到達到這種要求的編輯器。

除XMLSpy 和 LiquidXMLStudio 以外,發現還有兩個比較強大,其實,哪個強大,你隻需要在這裡看看哪個最貴就可以了。

不過,我是沒看懂,為什麼有的那麼貴。看來,程式員,總是站在程式員的角度來看世界,裡面最貴的,比LiquidXMLStudio貴了一個量級。

好象和XMLSeedXML Schema Editor

類似,都是用于非程式員的。他們貴的原因,都是因為真真正正在用XML的含義:完備性的文檔(不是程式員的叫法:可擴充性ML)。是給不是程式員的人用的,看來也說明,程式員普遍都是吊絲。外國可能也是如此。

哈。吊絲們都回回神,不多說了,是以關注點來是回到XMLSpy 和 LiquidXMLStudio。(為什麼我用吊絲?因為QQ拼音,因為高大上的原因,打不出來這個詞)。

讓我吃驚的是,XMLSpy好貴。快趕上非程式員用的。

但,我這沒有最新版的2014,據說也是可以完成XML到C++的MAP.

是以,隻用到了LiquidXMLStudio。

LiquidXMLStudio 可以映射各種語言,隻是我用到了C++。

至于如何操作,我不寫了,看這個頁面:

http://www.liquid-technologies.com/Liquid-Products/LearnAbout/XmlDataBinding.aspx

沒有被牆。

忘了說,這是我最關注的一個要點

* 沒有被牆。

下一個,當然是,有D版的。

然後,最好有vs 2003以下版本的。能在XP運作的。

以上就是我的要求。

***********************************************************************

經過調研,沒有達到要求的,暫時。

但xmlstudio2011 最合适,因為有破解,可以生成C++代碼。

用的雖然不是開源的XML庫,但也夠用了。

以下是示例代碼,最關鍵是這幾句

1. 打開一個XSD,然後:打開向導:

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

2. 選擇C++語言

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

3. 可以修改一些資訊,可選

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

4. 填加一個測試用的XML檔案。

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

5. OK 了,打開工程後

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

6. 打開工程,進行一點編碼。Liquid會自動建立一個chm幫助文檔,這個我太喜歡了。

照着下面這樣,你就可以生成一個可以工作的例子了。

對了,我所選的xml是在示例工程下面。

D:\Program Files (x86)\Liquid Technologies\Liquid XML 2014\Examples\BookStore\Schemas\BookStore.xsd

D:\Program Files (x86)\Liquid Technologies\Liquid XML 2014\Examples\BookStore\Data Files\BookStoreSample.xml

XML常用的工具_LiquidXMLStudio映射XML到C++代碼

**********************************************

*********************************************