使用XML技術上傳文件的例子(2)_Xml教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:一個以Javascript xml的樹型列表
        這是在www.java2s.com網站下載的一個以Javascript xml的樹型列表,這個列表界面非常的漂亮,但是由于里面內容比較復雜,而現在項目需要用到這個列表,我到現在還沒有摸清怎么在里面讓點擊一

      新的上傳方案

      需要按照如下步驟操作。

      客戶端:

      使用MSXML 3.0創建一個XML文檔

      創建一個針對二進制內容的XML節點

      使用ADO Stream object將上傳的文件數據放入該節點

      使用XMLHTTP對象把這個XML文檔發送給Web服務器

      服務器端:

      從Request對象中讀出XML文檔

      讀出二進制節點中的數據并且存儲到服務器上的文件中。當然,我們也可以將其存儲到數據庫的BLOB型字段中。

      在解釋這段代碼之前,我們可以對這個方案進行一些思考。

      對XML的思考

      XML格式支持很多數據類型,比如numeric, float, character等等。很多作者將XML定義為ASCII格式,但是我們不能忽視,XML技術還可以使用“bin.base64”數據類型來描述二進制信息。這個特性在MS XML3.0解析器重得到完全的支持,但是目前還需要一些特別設置。該對象提供一些可以對二進制數據進行完全控制的屬性:

      obj_node.dataType - 該可讀寫的屬性定義了特定節點的數據類型。MSXML解析器支持更多的數據類型(參見MSDN:http://msdn.microsoft.com/library/psdk/xmlsdk/xmls3z1v.htm)

      對于二進制數據,我們可以使用“bin.base64”類型。

      obj_node.nodeTypedValue - 該可讀寫屬性包含了按照制定類型表示的指定節點的數據。

      我們可以創建一個包含多個bin.base64類型節點的XML文檔,節點中包含上傳的文件。這點特性可以使用一個POST一次上傳多個文件。

      我們可以使用XMLHttpRequest對象和POST方法發送一個XML文檔給Web服務器。該對象為HTTP服務器提供了客戶端協議支持,允許在Web服務器上發送和接受MS XMLDOM對象。XMLHttpRequest是Internet Explorer 5內置的COM對象(不需要定制安裝),并且發送完畢后無需轉換頁面。

      分享:xml中的空格之完全解說
      在xml輸入文件中決定哪些空格是重要的,xslt處理器要看見這些空格結點。而決定的密鑰就是xml:space屬性。 只適合對xml文件結構有一定了解的學者,不適合初學者。請按從上至下的順序閱讀

      來源:模板無憂//所屬分類:Xml教程/更新時間:2008-08-22
      相關Xml教程