求一JAVA读取XML的实例,分不是问题,不够再加!!!

伍子V5 2003-10-20 04:27:52
XML是我程序的配置文件
我需要在在程序开始把它里面的信息读取出来存放在自己定义好的变量里面
谁有相似的实例?
<table>
<tablename>tsm005</tablename>
<outputfile>port.txt</outputfile>
<column>
<columnname>portgb</columnname>
<columnformat>C5</columnformat>
</column>
<column>
<columnname>portnm</columnname>
<columnformat>D20,3</columnformat>
</column>
...
</table>
public class Table {
String tableName;
String outputFile;
HashMap column;


public Table() {
tableName="";
outputFile="";
column=new HashMap();
}
public void setTableName(String tableName)
{
this.tableName=tableName;
}
public String getTableName()
{
return this.tableName;
}
public void setOutputFile(String outputFile)
{
this.outputFile=outputFile;
}
public String getOutputFile()
{
return this.outputFile;
}
public void setColumn(String columnName,String columnFormat)
{
column.put(columnName,columnFormat);
}
public String getColumnFormat(String columnName)
{
return (String)column.get(columnName);
}
public ArrayList getColumnNames()
{
ArrayList columns=new ArrayList();
Set keys=column.keySet();
Iterator keyIter=keys.iterator();
while(keyIter.hasNext())
{
columns.add((String)keyIter.next());
}
return columns;
}
public int getColumnCounts()
{
return column.size();
}
}
...全文
45 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
amang 2003-10-21
  • 打赏
  • 举报
回复
import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.*;
import org.xml.sax.InputSource;
import java.io.InputStream;
import java.util.ArrayList;

static Document getDocument() {
Document doc = null;
try {
DOMParser parser = new DOMParser();
String fileName = "/config/table.xml";
InputStream inpt = fileName.getClass().getResourceAsStream(fileName);
if (inpt == null) {
inpt = ClassLoader.getSystemResourceAsStream(fileName);
}
parser.parse(new InputSource(inpt));
InputSource a = new InputSource();
doc = parser.getDocument();
}
catch (Exception e) {
System.err.println("An Error Occurred: Parse configuation file." + e);
}
return doc;
}

static ArrayList getProperties(Document doc,
String elementName, String attributeName) {
ArrayList retValue = new ArrayList();
if (attributeName != null) {
NodeList elements =
doc.getElementsByTagName(elementName);
int elementCount = elements.getLength();
for (int i = 0; i < elementCount; i++) {
Element element = (Element)elements.item(i);
NamedNodeMap attributes = element.getAttributes();
if (attributes.getNamedItem(attributeName) != null) {
retValue.add(attributes.getNamedItem(attributeName).getNodeValue());
}
}
}
return retValue;
}
伍子V5 2003-10-21
  • 打赏
  • 举报
回复
不过我为什么找不到import org.jdom.transform.JDOMResult;
我用的是JBuilder7
伍子V5 2003-10-21
  • 打赏
  • 举报
回复
呵呵,楼上的还挺有意思
谢谢你先
wellsoon 2003-10-21
  • 打赏
  • 举报
回复
不是没有人能领这个分,而是

一般标题说“分不是问题,不够再加”的帖子最后都是楼主根本不结帖子。
有的人得到答案之后连个反馈信息都不给就不在出现了,直到下次又来“分不是问题”。

这样的事情多了之后,谁还会有热情继续回答这样的问题呢。


下面给了的简单的例子,不是想要你的分,只是想告诉你,不是没有人能领这个分!!!

package mytestpro;

import java.io.*;
import org.jdom.*;
import org.jdom.input.*;
import org.jdom.output.*;
import org.jdom.transform.JDOMResult;

public class opxml {

public opxml() {
}

public static void main(String[] args) {
try {
Document anotherDocument = new SAXBuilder().build(new File(
"c:\\table.xml"));
org.jdom.Element roote=anotherDocument.getRootElement();
System.out.println("表的名字是:"+roote.getChild("tablename").getText());
System.out.println("表的输出文件是:"+roote.getChild("outputfile").getText());
//本例子只演示了取前面两个元素的值,后面的因为存在同名元素,需要以list的方式处理。
//具体处理可以查看相关资料
}
catch (Exception e) {
e.printStackTrace();
}

}
}

xml文件(假设在c:\table.xml):

<?xml version="1.0" encoding="UTF-8"?>
<table>
<tablename>tsm005</tablename>
<outputfile>port.txt</outputfile>
<column>
<columnname>portgb</columnname>
<columnformat>C5</columnformat>
</column>
<column>
<columnname>portnm</columnname>
<columnformat>D20,3</columnformat>
</column>
</table>

伍子V5 2003-10-21
  • 打赏
  • 举报
回复
为什么就没有人能领这个分呢?
伍子V5 2003-10-21
  • 打赏
  • 举报
回复
JDOM?

UP
伍子V5 2003-10-21
  • 打赏
  • 举报
回复
揭贴,虽然问题还没有解决
pigo 2003-10-20
  • 打赏
  • 举报
回复

用jdom操作很方便。



伍子V5 2003-10-20
  • 打赏
  • 举报
回复
没有人会呀

给点参考意见也可以

50,504

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧