Java读取excel文件生成xml文档和JSON文档
2015-05-02 00:19
946 查看
Java读取excel文件生成xml文档和JSON文档
目录(?)[+]1.读取Excel文档中的内容
注意:刚开始在网上下了jlx.rar文件,没注意直接把jlx.rar当成jar包导进去了,在写代码时候纠结了,死活找不到相关jxl.jar包下面的类!各位看客注意了导包的时候一定要导入.jar包 rar与jar 真的好像 眼睛睁大放亮了呵呵!
jlx.jar包下载地址:
[java] view
plaincopy
<span style="font-size:14px;">package com.jun.excel;
import java.io.FileInputStream;
import java.io.InputStream;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
public class ImportUser
{
public static void main(String[] args)
{
readExcelFile();
}
//读取d://test.xls文件
private static void readExcelFile() {
// TODO Auto-generated method stub
try
{
String sourcefile = "d://test.xls";
InputStream is = new FileInputStream(sourcefile);
Workbook rwb = Workbook.getWorkbook(is);
//获得总的Sheets,得到sheet的层数
Sheet[] sheets = rwb.getSheets();
int sheetLen = sheets.length;
//获得第一个Sheets 的结果
jxl.Sheet rs = rwb.getSheet(0);
int num_row = rs.getRows();//得到行数
int num_column=rs.getColumns();//得到列数
for(int j=0;j < num_row ;j++)
{
Cell[] cell = rs.getRow(j);//得到第j行的所有值
for(int column_index=0;column_index<num_column;column_index++){
String value = cell[column_index].getContents();//得到第j行,第column_indexs列的值
System.out.print(""+""+rs.getRow(j)[column_index].getContents()+" ");
}
System.out.println("");
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}</span>
2.生成xml文档
生成XML文档类的主要代码:[java] view
plaincopy
package com.jun.createxml;
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import com.jun.excel.ImportUser;
public class CreateXML {
DocumentBuilderFactory dbf = null;
DocumentBuilder db = null;
Document doc = null;
TransformerFactory tff = null;
Transformer tf = null;
Source in = null;
Result out = null;
String xmlpath = null;
public CreateXML()throws Exception
{
dbf = DocumentBuilderFactory.newInstance();//实例化工厂类
dbf.setValidating(false);//不进行有效性检查
dbf.setNamespaceAware(true);
db = dbf.newDocumentBuilder();//实例化DocumentBuilder类
doc = (Document) db.newDocument();//实例化Document类
tff = TransformerFactory.newInstance();
tf = tff.newTransformer();
in=new DOMSource((Node) doc);
}
/*=====================================================
*============生成xml文件
*=====================================================*/
public void ProuduceXml(String axmlpath)
{
try
{
Element users = ((org.w3c.dom.Document) doc).createElement("users");//生产根元素students
((Node) doc).appendChild(users);//将根元素添加到根节点后面
for(int i=0;i<ImportUser.userList.size();i++){
Element user = ProuduceElement(ImportUser.userList.get(i).getName(), ImportUser.userList.get(i).getAge(),ImportUser.userList.get(i).getAddress(),ImportUser.userList.get(i).getPhone());
users.appendChild(user);
}
xmlpath = axmlpath;
out=new StreamResult(new FileOutputStream(xmlpath+"tr.xml"));//生成输出源
tf.transform(in,out);
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
public Element ProuduceElement(String aname, String _age,String _address,String _phone) throws Exception
{
Element user = ((org.w3c.dom.Document) doc).createElement("student");//生成student元素(students的子元素)
Element name = ((org.w3c.dom.Document) doc).createElement("name");//创建name子元素
name.appendChild(((org.w3c.dom.Document) doc).createTextNode(aname));//在name元素后添加文本节点
user.appendChild(name);//添加student的子元素name
//设置student的属性id的值
Element age = doc.createElement("age");
age.appendChild(doc.createTextNode(_age));
user.appendChild(age);
Element address = doc.createElement("address");
age.appendChild(doc.createTextNode(_address));
user.appendChild(address);
Element phone= doc.createElement("phone");
age.appendChild(doc.createTextNode(_phone));
user.appendChild(address);
return user;
}
}
在main函数中调用的方法:
[java] view
plaincopy
//创建XML文档
private static void createXMLFile() {
// TODO Auto-generated method stub
try
{
CreateXML xml=new CreateXML();
xml.ProuduceXml(xmlpath);
}
catch(Exception e)
{
System.out.println("main:\n"+e.getMessage());
}
}
3.生成json文档
相关文章推荐
- FLASH读取JAVA生成的XML文件,不同平台乱码
- 读取、回收和重用:使用 Excel、XML 和 Java 技术轻松搞定报告使用 Java 和 XML 技术读取 Excel 文件并写入新文件(1)
- Java基础/读取Excel写入XML文件中
- Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
- Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
- Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
- 从JAVA直接读取EXCEL、WORD并生成PDF文件
- Java读取一个xml文件并生成相应的类
- java 读取Excel并文档生成table
- java操作office和pdf文件:读取word,excel和pdf文档内容
- 读取五种格式的配置文件(xml(两种方式),txt,excel,csv,json)
- JAVA中使用freemark生成自定义文件(json、excel、yaml、txt)
- java读取excel文件里面的标准代码,并自动生成枚举类的java代码
- java操作office和pdf文件java读取word,excel和pdf文档内容
- C#读取excel文件,生成json
- Java读取Excel文件,生成SQL语句
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
- Java读取本地json文件及相应处理
- 【Java】读取Json配置文件
- python读取excel中表结构生成sql语句,存入txt文件