作用:常用来保存初始化配置信息,应用相关数据资源等。
位置:res/xml
实例:
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book price="99.0" 出版日期="2008" >疯狂java讲义 </book>
<book price="89.0" 出版日期="2009" >疯狂Android讲义 </book>
<book price="79.0" 出版日期="2011" >疯狂xml讲义 </book>
</books>
books 是根元素,book是子元素,price 是book元素的 属性。“疯狂java讲义” 是book的 文本内容。
package com.mytest;
import java.io.IOException;
import org.xmlpull.v1.XmlPullParserException;
import android.app.Activity;
import android.content.res.XmlResourceParser;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.TextView;
public class Xmltest extends Activity {
private TextView textView;
private Button button;
private XmlResourceParser xrParser;
private final String TAG = "Xmltest";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.xmltest);
init();
textView.setText(getXmlContent());
}
private void init() {
textView = (TextView) findViewById(R.id.textView);
button = (Button) findViewById(R.id.button);
xrParser = getResources().getXml(R.xml.books);
}
private String getXmlContent() {
StringBuilder sb = new StringBuilder();
try {
/* 当读到的不是结束标签 */
while (xrParser.getEventType() != XmlResourceParser.END_DOCUMENT) {
Log.d(TAG, "--- " + xrParser.getEventType() + " ---");
if (xrParser.getEventType() == XmlResourceParser.START_TAG) {
/* 获取标签名字 */
String tagName = xrParser.getName();
Log.d(TAG, "--- " + tagName + " ---");
if (tagName.equals("book")) {
sb.append("价格:" + xrParser.getAttributeValue(0) + "\n");
sb.append("出版日期:" + xrParser.getAttributeValue(1)
+ "\n");
sb.append("书名:" + xrParser.nextText() + "\n");
}
}
/* 获取下一个解析事件 */
xrParser.next();
}
} catch (XmlPullParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
}
}
阿斯蒂芬
1. 什么是XML
- XML 指可扩展标记语言(EXtensible Markup Language)
- XML 是一种标记语言,很类似 HTML
- XML 的设计宗旨是传输数据,而非显示数据
- XML 标签没有被预定义。您需要自行定义标签。
- XML 被设计为具有自我描述性。
- XML 是 W3C 的推荐标准
2. 格式
XML 文档必须包含根元素。该元素是所有其他元素的父元素。
XML 文档中的元素形成了一棵文档树。这棵树从根部开始,并扩展到树的最底端。
所有元素均可拥有子元素。
上图表示下面的 XML 中的一本书:上图表示下面的 XML 中的一本书:上图表示下面的 XML 中的一本书:表示一本书:<bookstore> <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="WEB"> <title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore>
例子中的根元素是 <bookstore>。文档中的所有 <book> 元素都被包含在 <bookstore> 中。
<book> 元素有 4 个子元素:<title>、< author>、<year>、<price>。
例子中的根元素是 <bookstore>。文档中的所有 <book> 元素都被包含在 <bookstore> 中。
<book> 元素有 4 个子元素:<title>、< author>、<year>、<price>。
属性值必须加引号。
更多参考:http://www.w3school.com.cn/xml/index.asp