Xml格式資料的產生和解析的程式碼詳情
1. Xml格式資料的產生與解析
使用xml 作為資料互動的載體是Android中非常重要的功能,例如天氣預報資料、簡訊備份資料、訊錄資料都可以以xml
的格式透過網路傳輸。
XML的格式透過便條的形式書寫和展示,一目了然,方便閱讀和識別,如下所示:
<xml 头> <student> <name>张三</name> <number>110001</number> <sex>male</sex> </student>
XML的生成
如果用java程式碼去實現這樣的一個字串格式,可以使用到StringBuilder來進行組拼:StringBuilder sb = new StringBuilder();
//数据保存到文件 sb.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); sb.append("<student>"); sb.append("<name>"); sb.append(name); sb.append("</name>"); sb.append("<number>"); sb.append(number); sb.append("</number>"); sb.append("<sex>"); sb.append(sex); sb.append("</sex>"); sb.append("</student>");
上面的程式碼雖然也可以產生xml
##文件,但是無法對特殊字元進行處理,例如如果簡訊內容包含「>」符號,那麼xml解析器就無法完成正確的解析。因此使用的前提是你確定資料內容沒有特殊字元。 而Android為我們提供了一個專門用來產生XML資料的API:XmlSerializer, 該api內部已經實現了對特殊字元的處理,程式碼如下:try {// 采用Android的api面向对象的生成xml文件. // 1.得到xml文件的序列化器 XmlSerializer serializer = Xml.newSerializer(); // 2.指定序列化器的一些初始参数 File file = new File(getFilesDir(), name +".xml"); FileOutputStream os = new FileOutputStream(file);serializer.setOutput(os, "utf-8"); // 3.写xml文件. serializer.startDocument("utf-8", true);//写开头serializer.startTag(null, "student");//开始标签 serializer.startTag(null,"name"); serializer.text(name);//文本标签 serializer.endTag(null,"name");//结束标签 serializer.startTag(null,"number"); serializer.text(number); serializer.endTag(null,"number"); serializer.startTag(null,"sex"); serializer.text(sex); serializer.endTag(null,"sex"); serializer.endTag(null,"student"); serializer.endDocument();//写结尾 os.close(); Toast.makeText(this,"保存数据成功", 0).show(); } catch (Exception e) {e.printStackTrace(); Toast.makeText(this,"保存数据失败", 0).show(); }
try {//学生信息的xml文件存在 //1.获取到一个xml解析器 XmlPullParser parser = Xml.newPullParser(); //2.设置解析器的初始化参数 FileInputStream inputStream = new FileInputStream(file);parser.setInput(inputStream, "utf-8"); //3.解析xml文件 int type = parser.getEventType();//得到第一个事件的类型. System.out.println("type:"+type); StringBuilder sb = new StringBuilder();//当事件类型不是文档的结尾则一直遍历每一个节点 while(type!=XmlPullParser.END_DOCUMENT){if(type==XmlPullParser.START_TAG){ //开始节点 //判断节点的名称 if("name".equals(parser.getName())){String nameStr = parser.nextText(); System.out.println("姓名:"+nameStr); sb.append("姓名:"+nameStr+"\n"); }else if("number".equals(parser.getName())){String numberStr = parser.nextText(); System.out.println("学号:"+numberStr); sb.append("学号:"+numberStr+"\n"); }else if("sex".equals(parser.getName())){String sexStr = parser.nextText(); System.out.println("性别:"+sexStr); sb.append("性别:"+sexStr+"\n"); } } type = parser.next();//获取下一个事件类型 System.out.println("type:"+type); } inputStream.close();//浪费资源 造成内存泄漏! tv_result.setText(sb.toString()); } catch (Exception e) {e.printStackTrace(); Toast.makeText(this,"解析学生信息失败", 0).show(); }
#
以上是Xml格式資料的產生和解析的程式碼詳情的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

XML檔可以用PPT開啟嗎? XML,即可擴展標記語言(ExtensibleMarkupLanguage),是一種廣泛應用於資料交換和資料儲存的通用標記語言。與HTML相比,XML更加靈活,能夠定義自己的標籤和資料結構,使得資料的儲存和交換更加方便和統一。而PPT,即PowerPoint,是微軟公司開發的一種用於創建簡報的軟體。它提供了圖文並茂的方

使用Python實現XML資料的合併和去重XML(eXtensibleMarkupLanguage)是一種用於儲存和傳輸資料的標記語言。在處理XML資料時,有時候我們需要將多個XML檔案合併成一個,或移除重複的資料。本文將介紹如何使用Python實現XML資料的合併和去重的方法,並給出對應的程式碼範例。一、XML資料合併當我們有多個XML文件,需要將其合

Python中的XML資料轉換為CSV格式XML(ExtensibleMarkupLanguage)是一種可擴充標記語言,常用於資料的儲存與傳輸。而CSV(CommaSeparatedValues)則是一種以逗號分隔的文字檔案格式,常用於資料的匯入和匯出。在處理資料時,有時需要將XML資料轉換為CSV格式以便於分析和處理。 Python作為一種功能強大

使用Python實現XML資料的篩選和排序引言:XML是一種常用的資料交換格式,它以標籤和屬性的形式儲存資料。在處理XML資料時,我們經常需要對資料進行篩選和排序。 Python提供了許多有用的工具和函式庫來處理XML數據,本文將介紹如何使用Python實現XML資料的篩選和排序。讀取XML檔案在開始之前,我們需要先讀取XML檔案。 Python有許多XML處理函式庫,

Python實作XML與JSON之間的轉換導語:在日常的開發過程中,我們常常需要將資料在不同的格式之間轉換。 XML和JSON是常見的資料交換格式,在Python中,我們可以使用各種函式庫來實作XML和JSON之間的相互轉換。本文將介紹幾種常用的方法,並附帶程式碼範例。一、XML轉JSON在Python中,我們可以使用xml.etree.ElementTree模

使用Python處理XML中的錯誤和異常XML是一種常用的資料格式,用於儲存和表示結構化的資料。當我們使用Python處理XML時,有時可能會遇到一些錯誤和異常。在本篇文章中,我將介紹如何使用Python來處理XML中的錯誤和異常,並提供一些範例程式碼供參考。使用try-except語句捕捉XML解析錯誤當我們使用Python解析XML時,有時候可能會遇到一些

Python解析XML中的特殊字元和轉義序列XML(eXtensibleMarkupLanguage)是一種常用的資料交換格式,用於在不同系統之間傳輸和儲存資料。在處理XML檔案時,經常會遇到包含特殊字元和轉義序列的情況,這可能會導致解析錯誤或誤解資料。因此,在使用Python解析XML檔案時,我們需要了解如何處理這些特殊字元和轉義序列。一、特殊字元和

C#開發中如何處理XML和JSON資料格式,需要具體程式碼範例在現代軟體開發中,XML和JSON是廣泛應用的兩種資料格式。 XML(可擴展標記語言)是一種用於儲存和傳輸資料的標記語言,而JSON(JavaScript物件表示)是一種輕量級的資料交換格式。在C#開發中,我們經常需要處理和操作XML和JSON數據,本文將重點放在如何使用C#處理這兩種數據格式,並附上
