关于xml空格问题

qq_32764015 2016-03-03 05:52:30
现在所生成的xml是这样的
<column name="ID" alias="id" typeValue="-5" typeName="Long" desc="主键ID" isKey="1"/>
但是我想要的结果是
<column name="ID" alias="id" typeValue="-5" typeName="Long" desc="主键ID" isKey="1 " />
就是在 isKey="1"与/>之间有个空格
应该怎么在生成xml代码中实现啊
...全文
293 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
rickylin86 2016-03-05
  • 打赏
  • 举报
回复
---------- java ---------- 原来内容: <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> <element attr1="value1" attr2="value2"/> ------------------------------------ 处理后内容: <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> <element attr1="value1" attr2="value2" /> Output completed (0 sec consumed) - Normal Termination

import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;
import static java.nio.file.StandardOpenOption.*;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.charset.Charset;
import java.nio.channels.FileChannel;
public class Test{
	public static void main(String[] args)throws Exception{
		String content = loadXMLFile("test.xml");
		String regex = "(?m)(?!\\s)(?=/>)";
		System.out.println("原来内容:");
		System.out.println(content);
		System.out.println("------------------------------------");
		content = content.replaceAll(regex," ");
		System.out.println("处理后内容:");
		System.out.println(content);
	}

	private static String loadXMLFile(String source)throws Exception{
		Path path = Paths.get(source);
		FileChannel channel = (FileChannel)(Files.newByteChannel(path,READ));
		int size = (int)(channel.size());
		ByteBuffer buf = ByteBuffer.allocate(size);
		channel.read(buf);
		buf.flip();
		Charset charset = Charset.defaultCharset();
		CharBuffer charBuf = charset.decode(buf);
		return charBuf.toString();
	}
}
u013797093 2016-03-04
  • 打赏
  • 举报
回复
引用 7 楼 rickylin86 的回复:
这样???

public class Test{
	public static void main(String[] args){
		String content = "<column name=\"ID\" alias=\"id\" typeValue=\"-5\" typeName=\"Long\" desc=\"主键ID\" isKey=\"1\"/>";
		content = content.replaceAll("(?=/>)"," ");
		System.out.println(content);
	}
}
复议.. 如果用DOM4J 的工具是格式化的 你这个自己写一个XML输出类吧
rickylin86 2016-03-03
  • 打赏
  • 举报
回复
这样???

public class Test{
	public static void main(String[] args){
		String content = "<column name=\"ID\" alias=\"id\" typeValue=\"-5\" typeName=\"Long\" desc=\"主键ID\" isKey=\"1\"/>";
		content = content.replaceAll("(?=/>)"," ");
		System.out.println(content);
	}
}
qq_32764015 2016-03-03
  • 打赏
  • 举报
回复
求大神 qiudashen
qq_32764015 2016-03-03
  • 打赏
  • 举报
回复
引用 3 楼 rickylin86 的回复:
你是用JAXP生成XML的吗?还是说是自己实现的方法生成对应的xml文件的呢?如果是后者的话那么应该很容易实现啊.
是自己写的方法生成~~怎么实现啊~~查了半天都查不到~~就是在最后一个属性和 />之间加个空格
qq_32764015 2016-03-03
  • 打赏
  • 举报
回复
引用 2 楼 slwsss 的回复:
为什么要多这个空格
老师要求~~~~想了半天 想不出来
rickylin86 2016-03-03
  • 打赏
  • 举报
回复
你是用JAXP生成XML的吗?还是说是自己实现的方法生成对应的xml文件的呢?如果是后者的话那么应该很容易实现啊.
slwsss 2016-03-03
  • 打赏
  • 举报
回复
为什么要多这个空格
qq_32764015 2016-03-03
  • 打赏
  • 举报
回复
求助啊 求助

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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