`
tangwenchao86
  • 浏览: 381219 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

将普通的键值对转换成xml形式的键值对

阅读更多
      今天在做FOA域名转出的时候,有一个注册代码和注册公司的对应关系。就是说通过poll端口你可以查到注册代码,然后通过这个对应关系找到对应公司。
      于是想把普通文本中的键值对,转换成xml文件。

a.txt文件中的内容(源文件中没有‘$’,为了好判断,将空格转换成‘$’):

1$Reserved$
2$Network$Solutions,$LLC$
3$Registry$Installation$
8$Test$Registrar$
9$register.com,$Inc.$
13$Melbourne$IT,$Ltd$
14$France$Telecom$
15$CORE$Internet$Council$of$Registrars$
16$AOL$LLC$
30$NameSecure$L.L.C.$
31$DSTR$Acquisition$PA$I,$LLC$dba$DomainBank.com$
48$eNom,$Inc.$
49$GMO$Internet,$Inc.$d/b/a$Onamae.com$
52$Abacus$America,$Inc.$
53$A$Technology$Company,$Inc.$
54$Signature$Domains,$LLC$


b.txt文件中的内容:
<property name="1" value="Reserved" />
<property name="2" value="Network Solutions, LLC" />
<property name="3" value="Registry Installation" />
<property name="8" value="Test Registrar" />
<property name="9" value="register.com, Inc." />
<property name="13" value="Melbourne IT, Ltd" />
<property name="14" value="France Telecom" />
<property name="15" value="CORE Internet Council of Registrars" />
<property name="16" value="AOL LLC" />
<property name="30" value="NameSecure L.L.C." />
<property name="31" value="DSTR Acquisition PA I, LLC dba DomainBank.com" />
<property name="48" value="eNom, Inc." />
<property name="49" value="GMO Internet, Inc. d/b/a Onamae.com" />
<property name="52" value="Abacus America, Inc." />
<property name="53" value="A Technology Company, Inc." />
<property name="54" value="Signature Domains, LLC" />


String line = null;
		
		 InputStreamReader b = new InputStreamReader(new FileInputStream(
				    new File("d:/a.txt")), "gbk");
		
		BufferedReader br = new BufferedReader(b);
		FileWriter fw = new FileWriter("d:\\b.txt");
	
		while((line = br.readLine()) != null) {
			
			String arr[] = line.split("\\$");
			String temp = "";
			if(arr.length >= 2) {
				for(int i = 1;i < arr.length;i++) {
					if(temp.equals("")) {
						temp = temp + arr[i];
					}
					else {
						temp = temp + " " + arr[i];
					}	
				}
			}
			
			System.out.println("temp:" + temp);
			
			String sb = "<property name=\"" + arr[0] +"\" value=\"" +temp  + "\" />";
			
			fw.write(sb);
			fw.write("\n");
			
		}
		
		br.close();
		
		fw.flush();
		
		fw.close();




注意:1变量的范围:全局变量还是局部变量,我就将temp 和 sb设成全局变量了,导致栈溢出了。
2.流的构造函数,老长时间不用都快忘了。
3.转义符的使用。‘\\$’,'\"'.

分享到:
评论

相关推荐

    Java xml转化为map

    Map是一种键值对集合,能够方便地进行数据存取。本篇将详细介绍如何在Java中将XML文件转换为Map对象。 首先,我们需要理解XML的基本结构。XML由一系列元素组成,每个元素可以有属性和子元素。在转化过程中,元素的...

    C++结构体和json/xml之间互相转换

    JSON是一种轻量级的数据交换格式,其数据结构主要由对象(键值对)和数组组成。XML则是一种标记语言,通过标签来描述数据的结构和内容。在C++中,处理JSON的库有很多,如nlohmann/json,而处理XML的库有pugixml、...

    C# LinqXML将XML文件中的属性转换为元素

    属性是附加在元素上的键值对,用于提供额外的信息。 在某些情况下,将属性转换为元素可能是有益的,例如当属性值包含复杂数据或需要进行更复杂的查询时。LINQ to XML提供了强大的功能来实现这种转换。以下是一个...

    js xml转换execl

    - **处理数据**:将Excel数据转换为JavaScript对象,这通常涉及遍历行和列,创建键值对或嵌套数组。 - **构建XML**:有了结构化数据,我们可以使用`xmlbuilder`库来创建XML文档。定义根元素,然后递归地添加子元素...

    PHP二维数组形成XML内容形式

    这个`array_to_xml`函数递归地遍历数组,为每个键值对创建一个新的XML元素。如果值是另一个数组,它会继续调用自身,将子数组转换为子节点。否则,它会创建一个带有指定值的简单元素。 现在,我们可以使用这个函数...

    Jquery xml2Json

    它会识别XML中的元素、属性、文本内容等,并将其对应到JSON的键值对中。XML的层次结构会被映射到JSON对象的嵌套结构中,这样前端就可以通过熟悉的JavaScript语法来访问和操作数据。 在实际应用中,比如从服务器获取...

    jaxb xml 转map

    将XML转换为Map可以使数据处理更加灵活,因为Map的键值对形式非常适合存储和操作键标识的数据。 首先,我们需要了解JAXB的基本用法。JAXB的工作原理是基于Java类来生成XML schema,或者反过来基于XML schema生成...

    json转为xml jar

    - JSON是一种轻量级的数据交换格式,它允许数据以键值对的形式存储,易于人阅读和编写,同时也易于机器解析和生成。 - XML是一种标记语言,提供了一种描述数据结构的方法,允许在文档中嵌套元素,支持自定义标签,...

    XML与JSON相互转化

    JSON,另一方面,是一种基于JavaScript语法的数据表示方式,它以键值对的形式存储数据,例如`{"key": "value"}`。JSON的数据结构更简洁,易于阅读和编写,同时在JavaScript中可以直接解析为对象,这使得它在网络应用...

    xmljson解析客户端

    2. 转换结构:遍历DOM树,将元素和属性映射到JSON键值对。 3. 序列化JSON:将转换后的结构转换为JSON字符串。 同样,JSON到XML的转换也需要反向操作: 1. 解析JSON:将JSON字符串转换为数据结构,如JavaScript对象...

    很好的xml 案例|xml入门教程|xml初学教程

    5. **XML属性**:属性是附加到元素上的额外信息,以键值对的形式存在。例如,`&lt;book id="123"&gt;`,其中`id`是属性,`123`是属性值。 6. **XML命名空间**:为了避免元素名冲突,XML引入了命名空间的概念。通过使用...

    NSDictionary,JSON和XML互相转换

    这可以通过先将XML解析为`NSDictionary`,然后再将这个字典转换为JSON字符串来完成。这个过程可以结合上述代码片段来实现。 总结来说,`NSDictionary`、JSON和XML都是数据表示的重要形式,它们在不同场景下各有优势...

    XML String 转成JSON

    JSON则是一种轻量级的数据交换格式,它采用键值对的形式表示数据,更易于人类阅读和编写,同时也能被机器轻松解析。上例的JSON形式如下: ```json { "book": { "title": "编程入门", "author": "张三", "year":...

    hibernate多对一映射(XML)版

    在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者将数据库操作转换为面向对象的方式,从而简化了数据访问层的编程。在这个“hibernate多对一映射(XML版)”的主题中,我们将深入探讨...

    java导入导出xml文件

    元素通过开始标签 `&lt;tag&gt;` 和结束标签 `&lt;/tag&gt;` 定义,属性以键值对的形式出现在开始标签内,如 `&lt;element attr="value"&gt;`。XML文档必须遵循一定的语法规则,例如所有元素都必须正确嵌套并有一个根元素。 导入XML...

    C#序列化与反序列化(包括复杂xml对象)

    我们将详细讲解三种方法,涵盖从XML节点获取键值对(KV值)到处理对象数组和节点标签组合的反序列化。 首先,让我们理解序列化的基本概念。序列化是将对象的状态转换为可存储或传输的形式的过程。在C#中,我们可以...

    XML解析还原代码

    例如,根元素作为树的根节点,子元素作为子节点,属性以键值对形式存储,文本内容作为叶子节点。 然后,遍历二叉树并按照XML原格式打印到屏幕。这涉及到对二叉树的深度优先搜索(DFS)或广度优先搜索(BFS),同时...

    IOS XML转JSON数据

    - 解析XML时,可以构建一个树形数据结构(如自定义的`NSMutableDictionary`或自定义类),将XML元素和属性存储为键值对。 - 或者,可以使用第三方库如SWXMLHash,它提供了一个更友好的API来解析XML并将其转化为...

    各种转换,xml,实体bean,动态bean,map等

    转换是将数据从一种形式转换为另一种形式的过程。在Java中,这可能涉及到对象的序列化(如转化为JSON或XML)、类型转换(如String到Integer),或者Java Bean之间的映射。Apache Commons Lang、Dozer、ModelMapper...

    Android中xml转json

    JSON则以键值对(key-value pairs)的形式存在,它由对象(object)、数组(array)、字符串(string)、数字(number)、布尔值(boolean)和null组成。 在Android中,转换XML到JSON主要有两种方法: 1. **使用...

Global site tag (gtag.js) - Google Analytics