我有一个java代码将txt文件转换为xml文件:(它可以工作)
Pattern p = Pattern.compile(".+@.+\\.[a-z]+");
BufferedReader in = new BufferedReader(new FileReader(fromFile));
FileOutputStream fos = new FileOutputStream(toFile);
OutputFormat of = new OutputFormat("XML", "windows-1250", true);
of.setIndent(1);
of.setIndenting(true);
XMLSerializer serializer = new XMLSerializer(fos, of);
ContentHandler hd = serializer.asContentHandler();
hd.startDocument();
AttributesImpl atts = new AttributesImpl();
hd.startElement("", "", "CDR_FILES", atts);
String line = null, tag;
while ((line = in.readLine()) != null) {
if (line.equals("Cdr File")) {
line = in.readLine();
hd.startElement("", "", "CDR", atts);
int i = 0;
while (!line.equals("Cdr File")) {
if (i == 0)
tag = "Record_No";
else if (i == 1)
tag = "Time";
else if (i == 2)
tag = "Serial_Number";
else if (i == 3)
tag = "Serial_Number_in_module";
这是我的txt文件:
Cdr File
1
Time=2010/02/15 17:15:17
Serial_Number=1924891018
Serial_Number_in_module=282826228ff
Cdr File
2
Time=2010/02/15 17:15:17
Serial_Number=1924891018
Serial_Number_in_module=283423627ff
...
我在Serial_Number_in_module中有两个字母“ff”,我不需要保存在xml文件中。 有可能不保存这些字母吗?
答案 0 :(得分:1)
在读取时从文件中获取字符串,然后写入序列号的条件
实施例
String sample = "282826228ff";
String output = sample.replaceAll("\\D+","");
输出:
282826228