怎样用java从xml里读取数据 并且保存为txt格式
展开全部
有XML文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Seg>abc123</Seg>
<Seg>123abc</Seg>
</Root>
从XML读取数据有两种理解,
一种是从XML的节点中读取数据,如上面的内容就是分别读取到abc123 和 123abc,供后续程序使用。这种读取一般需要使用Java 的一些XML API,如dom4j就可以,具体网上用“java xml”关键字搜一下一大片;
另外一种就是把XML的内容作为文本处理,感觉楼主的意思应该是这种。其实XML文件本身就是平文件,直接用InputStream读取后转回成String,想怎么处理都可以。如:
FileInputStream fos = new FileInputStream(xmlFile);
File f = new File(xmlFile);
int length=(int)f.length();
//log.debug("[IO.getFileAsString] length = " + length);
byte[] buf = new byte[length];
fos.read(buf);
String encoding = "UTF-8";
String s = new String(buf,encoding);
至于想保存为txt,可以直接改文件后缀名,把xml改为txt就可以。当然,也可以把上面读取到的String用OutputStream输出到一个新的txt文件
<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Seg>abc123</Seg>
<Seg>123abc</Seg>
</Root>
从XML读取数据有两种理解,
一种是从XML的节点中读取数据,如上面的内容就是分别读取到abc123 和 123abc,供后续程序使用。这种读取一般需要使用Java 的一些XML API,如dom4j就可以,具体网上用“java xml”关键字搜一下一大片;
另外一种就是把XML的内容作为文本处理,感觉楼主的意思应该是这种。其实XML文件本身就是平文件,直接用InputStream读取后转回成String,想怎么处理都可以。如:
FileInputStream fos = new FileInputStream(xmlFile);
File f = new File(xmlFile);
int length=(int)f.length();
//log.debug("[IO.getFileAsString] length = " + length);
byte[] buf = new byte[length];
fos.read(buf);
String encoding = "UTF-8";
String s = new String(buf,encoding);
至于想保存为txt,可以直接改文件后缀名,把xml改为txt就可以。当然,也可以把上面读取到的String用OutputStream输出到一个新的txt文件
追问
本人新手,求详细点的回答,最好带上java代码, 先谢了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需要解析里面的内容然后在组合在一起
我用的是SAXReader reader = new SAXReader();
来解析xml文件希望对你有用
我用的是SAXReader reader = new SAXReader();
来解析xml文件希望对你有用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询