易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : xml

使用kxml解析xml文件(一)

这个是参照ibm网站上的文章做的。
xml源文件:
<?xml version="1.0"?>
<!DOCTYPE rss PUBLIC
"-//Netscape Communications//DTD RSS 0.91//EN"
"http://my.netscape.com/publish/formats/rss-0.91.dtd"
>
<rss version="0.91">
<channel>
<title>Meerkat: An Open2 Wire Service</title>
<link>http://meerkat.oreillynet.com</link>
<description>
Meerkat is a Web-based syndicated content reader based on RSS ("Rich Site Summary").
RSS is a fantastic, simple-yet-powerful syndication system rapidly gaining momentum.
</description></channel></rss> 
解析code:
public static void traverse( XmlParser parser, String indent ) throws Exception
{
boolean leave = false;
String title = new String();
String desc = new String();
do {
ParseEvent event = parser.read ();
ParseEvent pe;
switch ( event.getType() ) {
// For example, <title>
case Xml.START_TAG:
// see API doc of StartTag for more access ......

XML,XMLList,XMLListCollection之间的关系笔记

通常情况下,你可以从服务器上为tree控件取得XML数据 ,你也可以在<mx:Tree>Tag里直接定义格式良好的XML数据。
你可以使用<mx:XML>或者<mx:XMLList>Tag在mxml里定义XML数据。
你可以将XML object直接作为一个层级数据控件的dataProvider,however,if the object changes dynamically,你应该做如下处理:
1,将XML或者XMLList objects转换为XMLListCollection;
2,通过修改XMLListCollection数据来更新原始的XML数据;
XMLListCollection支持IList和ICollectionView两个接口,所以它能实现access,sort,filter等等操作:
get,set,add,remove
同时支持IViewCursor接口,于是可以实现Cursor功能:
一个Array,ArrayCollection,ICollectionView和IViewCursor之间的关系的例子如下:
var myAC:ArrayCollection=new ArrayCollection(myArray);
var myCursor:IViewCursor=myAC.CreateCursor();
while(!myCursor.afterLast){myCursor.moveNext();}
以下例子显示了两个Tree,一个使用XML作为数据源,一个使用XMLListCollection作为数据源
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
  & ......

使用XMLList读取XML数据


使用XMLList读取XML数据
  XML对象提供了一个返回XMLList类型的方法elements(),既返回所有XML对象的子元素节点,随后我们可以通过for each语句循环则可访问到整个XML数据内容。以上面创建内部XML文档的XML数据为例,详细见如下代码块:
varlist:XMLList=pXml.elements();
foreach(varelement:XMLinlist)
{
  //获取每一个节点的id
  Alert.show(element.@id);
  trace(element.@id);
}
  这里需要注意一点就是elements()方法只会当前节点的下一级节点,如果XML层次结构比较多还需递归来处理。另外还可以使用“.”操作符来取数据,格式为:根节点.子节点.....元素名称;
......

XML,XMLList

5.  命名规则(不能包括 xml,空格,尖括号,等特殊符号,不能数字开头)
6.  可以自带属性。属性值用“”标示
7.  注释<!--注释的内容-->
8.  如果要显示特殊符号可用<![CDATA[  这里写特殊符号  ]]>
 
创建
var xml:XML=<shuiGuo>
  <apple price="1.5">红苹果</apple>
  <apple price="1.6">青苹果</apple>
  <apple price="1.8">黄苹果</apple>
  <orange price="1.0">橘子</orange>
</shuiGuo>;//注意这里的分号不可省略
或者
var xml:XML=new XML(“xml格式字符串”)
通常用来读取外部的 xml 文件
 
操作:(·  @   ··      *     delete)
trace(xml.*.(@price<1.9))
  delete xml.orange[1];
xml.banana=<banana price="2.5">"香蕉"</banana>
xml.banana.pear="梨"
例子:
var xml:XML=<fruit>
<apple price="1.5">红苹果</apple> ......

java读取xml文件

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReadSetting {
private Element eroot = null;

public void setRootElementByPath (String path) {
File f = new File(path);
Element root = null;
if(f.exists())
{
SAXReader reader = new SAXReader();
Document doc;
try {
doc = reader.read(f);
root = doc.getRootElement();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
eroot = root;
}
public Map getSetting(String ename) {

Map objmap = null;
if(eroot!=null&&ename!=null&&!ename.equals(""))
objmap = getElements(eroot,ename);
return objmap;
}

private Map getElements(Element root,String ename)
{
Element foo;
Map o ......

java读取xml文件

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReadSetting {
private Element eroot = null;

public void setRootElementByPath (String path) {
File f = new File(path);
Element root = null;
if(f.exists())
{
SAXReader reader = new SAXReader();
Document doc;
try {
doc = reader.read(f);
root = doc.getRootElement();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
eroot = root;
}
public Map getSetting(String ename) {

Map objmap = null;
if(eroot!=null&&ename!=null&&!ename.equals(""))
objmap = getElements(eroot,ename);
return objmap;
}

private Map getElements(Element root,String ename)
{
Element foo;
Map o ......

java 生成xml文件

import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
public class createXml
{
public static boolean writeXml(String path,String dir,String wpath,String wname)
{
File[] files = ReaderListFiles(path);
boolean flag = false;
if(files!=null)
{
StringBuffer xml = ReaderFilesContent(files,dir);
if(xml!=null)
flag = writeXmlFile(wname,wpath,xml);
}

return flag;
}

private static File[] ReaderListFiles(String path)
{
File file = new File(path);
if(file.exists()&&file.isDirectory())
return file.listFiles();
else if(file.exists()&&file.isFile())
{
File[] files = new File[1];
files[0] = file;
return files;
}
else
return null;
}

private static StringBuffer ReaderFilesContent(File[] files,String dir)
{
StringBuffer txml = new StringBuffer();
for(int i=0;i<files.length;i++)
{
String filena ......

java 生成xml文件

import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
public class createXml
{
public static boolean writeXml(String path,String dir,String wpath,String wname)
{
File[] files = ReaderListFiles(path);
boolean flag = false;
if(files!=null)
{
StringBuffer xml = ReaderFilesContent(files,dir);
if(xml!=null)
flag = writeXmlFile(wname,wpath,xml);
}

return flag;
}

private static File[] ReaderListFiles(String path)
{
File file = new File(path);
if(file.exists()&&file.isDirectory())
return file.listFiles();
else if(file.exists()&&file.isFile())
{
File[] files = new File[1];
files[0] = file;
return files;
}
else
return null;
}

private static StringBuffer ReaderFilesContent(File[] files,String dir)
{
StringBuffer txml = new StringBuffer();
for(int i=0;i<files.length;i++)
{
String filena ......
总记录数:815; 总页数:136; 每页6 条; 首页 上一页 [88] [89] [90] [91] 92 [93] [94] [95] [96] [97]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号