花開有時

          花開有時,花落有時,來有時,去有時。不撕扯,只關切;不紀念,只牽掛;不感動,只明白;不尋找,只記得。
          隨筆 - 24, 文章 - 0, 評論 - 54, 引用 - 0
          數據加載中……

          失敗!讀取XML文件

              本來想做個“小玩意”,這個“小玩意”的就是一個通訊錄(之所以這么想是因為手機丟了,好多熟人都聯系不上了)。本來也不難,界面用SWT&Jface做就行了,數據的存儲與讀取可以通過JDBCHibernate調用數據庫。雖然說數據庫的調用我并不是很熟,不過好在這方面的書籍大把大把的有,找找書照著做應該沒有什么問題。但是我并不想用這么“俗”的方法,以前老是聽說XML怎么這么不錯,接觸的也不少,看也能看懂,但是沒有用XML做過數據存儲,于是想能不能不用數據庫而改用XML來存儲通訊錄里的資料。仔細想想應該能行,無非就是一些元素和標識,XML應該挺適合做通訊錄的數據來源。但是想歸想,做歸做,首先要解決幾個問題:

          1、 java中怎么讀XML文件?用什么API來操作?

          因為不能上網,所以我要解決問題只能求助我電腦里的藏書了。找啊找,沒費什么勁就在jdk文檔里與一個ppt文件里發現了解決問題的線索:java里的org.w3c.dom包與org.xml.sax包提供了解決的這個問題應該用到的類。其中dom的意思是Document Object Modelsax的意思是Simple API for XML。在兩個的特點我照ppt抄一下,

          Dom

                  通過樹型結構存取XML文檔

                  由元素節點和文本節點組成

                  可以在樹的某個節點上向前或向后移動

                  SAX相比需要更大的內存

                  org.w3c.dom.*

          Sax

                  串行存取文檔

                  輕量級、快速

                  編程較難

                  僅用于串行存取

                  org.xml.sax.*

          各有各的特點,不管怎么說,對于我這個小玩意,兩個應該都能用。于是我就照著書上的例子試著建了幾個類,寫了一些代碼。這些類分別是DocHandlerXMLtest,還有應該xml文件:test.xml。但是還是失敗了,出現了空指針異常,描述是No value for sax.parser property,出現問題的代碼是Parser p = ParserFactory.makeParser(),問題是我是照著ppt上的代碼寫的,不知道出現了什么問題。后來我發現這是2003年的東西了,ppt上面用的類很多都是過時了的。找別的書也沒有找到解決方法,無奈。

          2、 怎么寫XML文件?

          我對“小玩意”的設計是不僅能從界面上瀏覽通訊錄上的資料,而且還能進行資料的錄入(這應該是基本要求吧)。但是我發現找不到寫XML文件的方法(在我的電腦里找不到)。有一個類java.beans.XMLEncoder應該可以生成指定對象的XML文件,但是好像只能對swing的對象進行的操作。

          不能上網,只能放在以后在說了,今天先放一放。

          posted on 2007-09-24 11:28 花開有時 閱讀(1712) 評論(0)  編輯  收藏 所屬分類: java

          主站蜘蛛池模板: 抚顺县| 北宁市| 揭阳市| 平山县| 石河子市| 福安市| 竹北市| 汽车| 芒康县| 玉林市| 富顺县| 博湖县| 南涧| 类乌齐县| 堆龙德庆县| 鄯善县| 上犹县| 佳木斯市| 天门市| 大关县| 南充市| 彰武县| 梧州市| 江源县| 海口市| 昌江| 永胜县| 丰台区| 自治县| 巴马| 乌兰浩特市| 三亚市| 青神县| 新营市| 新野县| 云梦县| 千阳县| 曲水县| 黎川县| 宜丰县| 伽师县|