XML格式数据的生成和解析
序列化(生成)
- XML格式数据的生成:
//1.初始化
XmlSerializer serializer = Xml.newSerializer(); //创建一个Serializer解析器
serializer.setOutput(out,"utf-8"); //设置输出流及输出的编码为UTF-8
//2.头
serializer.startDocument("UTF-8",true); //输出开始文档<?xml version="1.0" encoding="UTF-8" standalone="true"?>
//3.内容,根据需求写出节点结构
serializer.startTag(null,"tagname"); //输出<tagname>
serializer.attribute(null,"name","value"); //输出<tagname name="value">
serializer.text("value"); //输出<tagname></tagname>
serializer.endTag(null,"tagname");//结束标签
//4.结束
serializer.endDocument();//结束文档
反序列化
- XML格式数据的解析(Pull解析)
//1.初始化
XmlPullParser parser = Xml.newPullParser(); //创建一个PULL解析器
parser.setInput(in,"UTF-8"); //读取的编码为UTF-8
//2.获取第一个事件
int even t = parser.getEventType(); //开始解析时调用
//3.循环判断事件,直到达到文档结束节点,根据节点类型进行不同操作
while(event!=XmlPullParser.END_DOCUMENT){
//parser.getName(); //获得当前指向的标签的标签名
//parser.getAttributeValue(0); //获得当前指向的标签的第1个属性值
//parser.nextText(); //获得当前标签的标签值
switch(event){
case XmlPullParser.START_DOCUMENT: //如果指向的是START_DOCUMENT
//处理
break;
case XmlPullParser.START_TAG: //如果指向的是START_TAG
//处理
break;
case XmlPullParser.END_TAG: //如果指向的是END_TAG
//处理
break;
}
event = parser.next(); //指向下一个标签
}
表格数据的生成和解析
首先导入jxl.jar包
解析时表格位置:java/assets
表格生成
//1:创建excel文件
File file=new File("test.xls");
file.createNewFile();
//2:创建工作簿
WritableWorkbook workbook=Workbook.createWorkbook(file);
//3:创建sheet,设置第二三四..个sheet,依次类推即可
WritableSheet sheet=workbook.createSheet("用户管理", 0);
//4:设置titles
String[] titles={"编号","账号","密码"};
//5:单元格
Label label=null;
//6:给第一行设置列名
for(int i=0;i<titles.length;i++){
//x,y,第一行的列名
label=new Label(i,0,titles[i]);
//7:添加单元格
sheet.addCell(label);
}
//8:模拟数据库导入数据
for(int i=1;i<10;i++){
//添加编号,第二行第一列
label=new Label(0,i,i+"");
sheet.addCell(label);
//添加账号
label=new Label(1,i,"10010"+i);
sheet.addCell(label);
//添加密码
label=new Label(2,i,"123456");
sheet.addCell(label);
}
//写入数据,一定记得写入数据,不然你都开始怀疑世界了,excel里面啥都没有
workbook.write();
//最后一步,关闭工作簿
workbook.close();
表格解析
//1:创建workbook
Workbook workbook=Workbook.getWorkbook(new File("test.xls"));
//2:获取第一个工作表sheet
Sheet sheet=workbook.getSheet(0);
//3:获取数据
System.out.println("行:"+sheet.getRows());
System.out.println("列:"+sheet.getColumns());
for(int i=0;i<sheet.getRows();i++){
for(int j=0;j<sheet.getColumns();j++){
Cell cell=sheet.getCell(j,i);
System.out.print(cell.getContents()+" ");
}
System.out.println();
}
//最后一步:关闭资源
workbook.close();