java读取本地xml文件(java读取XML位置数据画图)

本文目录
java读取XML位置数据画图
我来帮你一把,分析问题;
读取XML文件的内容:
java项目内导入dom4j jar包,利用SAXReader读取xml文件,在java程序中实例化的对象类是Document,读取XML文件中的内容;
xml文件中的存储思路
《image》
《name》图片名《/name》
《Xposition》X轴位置《/Xposition》
《Yposition》Y轴位置《/Yposition》
画图:使用的java自带的swing就可以主程序即成JFrame,里面实例化一个JPanle,读取XML文件为所有图片设定位置就可以了;
大体思路就是这样,需要具体的写法,比较麻烦也不清楚你的图片需要怎么切割,什么业务逻辑,只能说到这了,有问题可以追问;
《/image》
java读取xml文件内容
java中不是有个读取xml文件的类吗?之间调用那类读取出来,然后用取节点的方法去取对应节点的里的值。等下给你代码。
public class ReaderXml {
private static String filename = "E:\\workplace\\readerxml\\bin\\reader\\xml\\reader.xml";
// private static Config config;
public static void main(String args) throws Exception{
//这里用反射机制
DocumentBuilderFactory domfac=DocumentBuilderFactory.newInstance();
DocumentBuilder dombuilder=domfac.newDocumentBuilder();
//读取文件流
InputStream is=new FileInputStream(filename);
Document doc=dombuilder.parse(is);
Element root=doc.getDocumentElement();
//获取所有xml节点
NodeList dbinfo=root.getChildNodes();
if(dbinfo!=null){
for(int i=0;i《dbinfo.getLength();i++){
//获取节点判断
Node db=dbinfo.item(i);
//如果是Hardwares节点,也就是你xml文件的最顶处的节点
if(db.getNodeName().equals("Hardwares")){
//获取第二个节点包含的所有节点
NodeList list=db.getChildNodes();
for(int y=0;y《list.getLength();y++){
Node n=list.item(y);
//如果节点等于Hardware
if(n.getNodeName().equals("Hardware")){
//获取Hardware节点中的所有节点
NodeList CnodeList=n.getChildNodes();
//取出Hardware里面的所有节点
for(int k=0;k《CnodeList.getLength();k++){
//取出节点
Node cn=CnodeList.item(k);
//去掉里面的#text文件节点。没用,这个不是你配置的节点,应该是xml文件隐藏的
if(!cn.getNodeName().equals("#text")){
//打印你所配置的所有节点 System.out.println("node="+cn.getTextContent());
}
}
}
}
}
}
}
}
}
//具体你要干嘛自己弄了!
java 读取和修改本地xml配置文件
dom4j解析
package demo;
import java.io.*;
import org.dom4j.*;
import org.dom4j.io.*;
import java.util.*;
public class WriteXML {
public void writer(){
//在内存中创建一个文档对象
Document doc=DocumentHelper.createDocument();
//往文档对象中添加一个元素
Element root=doc.addElement("users");
//将上面创建元素的设为根元素
doc.setRootElement(root);
//为根元素添加一个名称为user的子元素
Element user1=root.addElement("user");
//为user子元素添加一个id的属性 并赋值
user1.addAttribute("id","1");
//为user子元素添加一个子元素
Element name1=user1.addElement("name");
//为name子元素设置文本
name1.setText("zz");
Element config1=user1.addElement("config");
config1.setText("fullscreen");
Element user2=root.addElement("user");
//为user子元素添加一个id的属性 并赋值
user2.addAttribute("id","2");
//为user子元素添加一个子元素
Element name2=user2.addElement("name");
//为name子元素设置文本
name2.setText("xx");
Element config2=user2.addElement("config");
config2.setText("widescreen");
//下面将会进行输出产生XML文件
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("GBK");
format.setIndent(true);
format.setNewLineAfterNTags(1);
format.setNewlines(true);
try {
XMLWriter writer=new XMLWriter(new FileOutputStream("users.xml"),format);
writer.write(doc);
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
/*
Element user2=user1.createCopy();
user2.attribute("id").setValue("2");
Iterator it=user2.elementIterator();
while(it.hasNext()){
it.next();
}*/
}
}
JAVA获取当前文件夹下面所有XML文件怎么弄
import java.io.File;
public class ShowAllXML {
public static void main(String args) {
File file = new File("").getAbsoluteFile();
String dir;
dir = file.list();
for (int i = 0; i 《 file.list().length; i++) {
if (dir.length() 》 4) {
if (dir.endsWith(".xml")) {
print(dir);
}
}
}
}
private static void print(String string) {
System.out.println(string);
}
}

更多文章:
在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)
2026年10月11日 05:20
countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)
2026年10月11日 03:30
正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)
2026年10月11日 03:00
orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)
2026年10月10日 23:00
display的用法(display是什么意思 详解display的含义和用法)
2026年10月10日 22:00
html全部居中代码(怎么让网页居中显示,html如何让网页居中)
2026年10月10日 21:10




