xml读写 本帖最后由 java2000_net 于 2008-08-05 13:38:46 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你把java自带的dom sax源代码拷过来 不就得了么? 源码没有不过我写的这个代码你可以参考http://blog.csdn.net/yirentianran/archive/2008/07/24/2704446.aspx用正则解析xml就行了 至于输入输出流 你自己网上找一下很多的 package liu;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.util.StringTokenizer;public class TxtToXml { private String strTxtFileName; private String strXmlFileName; public TxtToXml() { strTxtFileName = new String(); strXmlFileName = new String(); } public void createXml(String strTxt, String strXml) { strTxtFileName = strTxt; strXmlFileName = strXml; String strTmp; try { BufferedReader inTxt = new BufferedReader(new FileReader( strTxtFileName)); BufferedWriter outXml = new BufferedWriter(new FileWriter( strXmlFileName)); outXml.write("<?xml version= \"1.0\" encoding=\"gb2312\"?>"); outXml.newLine(); outXml.write("<people>"); while ((strTmp = inTxt.readLine()) != null) { StringTokenizer strToken = new StringTokenizer(strTmp, ","); String arrTmp[]; arrTmp = new String[3]; for (int i = 0; i < 3; i++) arrTmp[i] = new String(""); int index = 0; outXml.newLine(); outXml.write(" <students>"); while (strToken.hasMoreElements()) { strTmp = (String) strToken.nextElement(); strTmp = strTmp.trim(); arrTmp[index++] = strTmp; } outXml.newLine(); outXml.write(" <name>" + arrTmp[0] + "</name>"); outXml.newLine(); outXml.write(" <sex>" + arrTmp[1] + "</sex>"); outXml.newLine(); outXml.write(" <age>" + arrTmp[2] + "</age>"); outXml.newLine(); outXml.write(" </students>"); } outXml.newLine(); outXml.write("</people>"); outXml.flush(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { String txtName = "testtxt.txt"; String xmlName = "testxml.xml"; TxtToXml thisClass = new TxtToXml(); thisClass.createXml(txtName, xmlName); }}读取txt,生成xml,的简单例子,希望有所帮助。 java数据类型转换的问题 如何将一个图片放入指定位置 在屏幕上输出一个"圆"的程序,请教高手 钱的转换问题..请高手指教!! MessageFormat要格式化得message如果包含{或者}如何处理 utf-8/unicode转换gb2312的问题 Apache配置问题,搞了几天了没弄出来 Unix下Java如何连接Access struts中的 # 号是个啥呀 jcreator2.5为什么会这样? extends 与 implements 有什么区别 org.w3c.dom.*这个包在哪里?
不过我写的这个代码你可以参考
http://blog.csdn.net/yirentianran/archive/2008/07/24/2704446.aspx
用正则解析xml就行了
至于输入输出流 你自己网上找一下
很多的
package liu;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.StringTokenizer;public class TxtToXml {
private String strTxtFileName; private String strXmlFileName; public TxtToXml() {
strTxtFileName = new String();
strXmlFileName = new String();
} public void createXml(String strTxt, String strXml) {
strTxtFileName = strTxt;
strXmlFileName = strXml;
String strTmp;
try {
BufferedReader inTxt = new BufferedReader(new FileReader(
strTxtFileName));
BufferedWriter outXml = new BufferedWriter(new FileWriter(
strXmlFileName));
outXml.write("<?xml version= \"1.0\" encoding=\"gb2312\"?>");
outXml.newLine();
outXml.write("<people>");
while ((strTmp = inTxt.readLine()) != null) {
StringTokenizer strToken = new StringTokenizer(strTmp, ",");
String arrTmp[];
arrTmp = new String[3];
for (int i = 0; i < 3; i++)
arrTmp[i] = new String("");
int index = 0;
outXml.newLine();
outXml.write(" <students>");
while (strToken.hasMoreElements()) {
strTmp = (String) strToken.nextElement();
strTmp = strTmp.trim();
arrTmp[index++] = strTmp;
}
outXml.newLine();
outXml.write(" <name>" + arrTmp[0] + "</name>");
outXml.newLine();
outXml.write(" <sex>" + arrTmp[1] + "</sex>");
outXml.newLine();
outXml.write(" <age>" + arrTmp[2] + "</age>");
outXml.newLine();
outXml.write(" </students>");
}
outXml.newLine();
outXml.write("</people>");
outXml.flush();
} catch (Exception e) {
e.printStackTrace();
}
} public static void main(String[] args) {
String txtName = "testtxt.txt";
String xmlName = "testxml.xml";
TxtToXml thisClass = new TxtToXml();
thisClass.createXml(txtName, xmlName);
}
}读取txt,生成xml,的简单例子,希望有所帮助。