xml文件格式化后不能获取到值
在有些时候,我们要使用到xml文件,必须得将文件中的内容压缩成一行,才能读取到其中的值,一旦有换行符、制表符、空格之类的就读不到。所以只能在开发好以后,将代码压缩再执行,十分不方便。
尝试了几个替换符号的方法, 效果并没有特别好。突发奇想,xml文件都是特别标准的,以尖括号<>括起来的,一对一对的存在着,可以使用字符串的方式获取。尖括号内部的值,完全保留;尖括号外面的值,则使用trim()过滤到两侧的特殊符号。效果很好,代码如下:
private static String convertFromXml(String str){
boolean flag = true;
StringBuffer ans = new StringBuffer();
String tmp = "";
for(int i=0;i<str.length();i++){
if('<'==str.charAt(i)){
tmp = tmp.trim();
ans.append(tmp);
flag = true;
ans.append(str.charAt(i));
}else if('>'==str.charAt(i)){
flag = false;
ans.append(str.charAt(i));
tmp = "";
}else if(flag){
ans.append(str.charAt(i));
}else{
tmp += str.charAt(i);
}
}
return ans.toString();
}
xml文件格式化后不能获取到值的更多相关文章
- eclipse中xml文件格式化
eclipse中xml文件格式化(ctrl+shift+f),可能会发现格式化xml文件后很乱,如图: 这不是我想要的样子,我想要的是这样的: 解决办法:windows -> Perferenc ...
- XML(php中获取xml文件的方式/ajax获取xml格式的响应数据的方式)
1.XML 格式规范: ① 必须有一个根元素 ② 不可有空格.不可以数字或.开头.大小写敏感 ③ 不可交叉嵌套 ④ 属性双引号(浏览器自动修正成双引号了) ⑤ 特殊符号要使用实体 ⑥ 注释和HTML一 ...
- Android中fragment_main.xml文件里的组件获取的问题
package com.dhy.phonedial; import android.app.Activity; import android.app.Fragment; import android. ...
- dtd文件中写的引用实体被xml文件引用后无法在浏览器中显示的问题
解决方案:把dtd文件由被xml文件外部引用改成被xml文件内部引用. 例子: 1.xml文件: <?xml version="1.0" encoding="UTF ...
- [Jacky] 解决Ext.Net GridPanel 选择的行数据刷新后不能获取最新值
选择GridPanel中一行数据,当变更数据时并重新刷新之后不能获取最新值,需通过如下方式获取: var internalId = gridPanel.getSelectionModel().getL ...
- C#Process执行批处理后如何获取返回值?
代码如下 p.StartInfo = new System.Diagnostics.ProcessStartInfo(path, pwd); p.Start();其中path是个BAT的路径!我想 ...
- repo manifest xml 文件修改后提交命令
git push origin dev(本地分支):refs/for/tv/Internal_Jb910_develop_t
- 使用Notepad++的XML Tools插件格式化XML文件
转自“”:https://blog.csdn.net/qq_36279445/article/details/79803310 1. 安装XML Tools插件 (1) 通过网址http://sour ...
- XML文件解析
eclipse新建源文件的文件夹,编译后和src文件夹中放在一起 源文件 源文件的配置文件 测试文件 源文件的测试文件 一般用maven进行管理的时候就是这样 如果是小项目的话可能就src和resou ...
随机推荐
- 浅析单点登录,以及不同二级域名下的SSO实现
一家公司有多个产品线,就可能要有多个子域名,下头以baidu域名为例,a.baidu.com, b.baidu.com.com 是顶级域名,baidu 就是一个二级域名,a和b就是子域名. 当用户在a ...
- python 取值方法:截取字符串
截取最后三位:aa=“TFR20171230001-1”cc=aa[-3]+aa[-2]+aa[-1] aa="1.36x36.8-ddr" bb=aa.split('x')[1] ...
- 字符串阵列String[]转换为整型阵列Int[]
原始数据: string input = "3,7,2,8,1,9,1,34,67,78,22"; 要处理为: " }; 最终处理为: , , , , , , , , , ...
- Elasticsearch 系列文章汇总(持续更新...)
系列文章列表 Query DSL Query DSL 概要,MatchAllQuery,全文查询简述 Match Query Match Phrase Query 和 Match Phrase Pre ...
- JVM规范系列第2章:Java虚拟机结构
本规范描述的是一种抽象化的虚拟机的行为,而不是任何一种(译者注:包括 Oracle 公司自己的 HotSpot 和 JRockit 虚拟机)被广泛使用的虚拟机实现. 记住:JVM规范是一种高度抽象行为 ...
- 解决项目无法添加VBIDE问题
为了方便大家引用,我直接把写好的文件放上来,方便大家下载.要注意的是:解压后需要把文件 VBIDE.DLL放入系统的(如果你的系统是32位,那就是 C:\windows\system32\..) 目录 ...
- Java实验报告一:Java开发环境的熟悉
实验要求: 1. 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试Java程序 实验内容 (一) 命令行下Java程序开发 (二)Eclipse下Java程序 ...
- Linux实践一:问题及解决
安装ubuntu出现的问题 : 打开镜像.iso文件,v-box好像是不识别这种格式的,它识别的好像是.vdi等格式,所以要用vm虚拟机打开镜像安装 打开镜像,按照步骤安装后,安装很久后,出现问题.初 ...
- shell脚本--逻辑判断与字符串比较
涉及到比较和判断的时候,要注意 整数比较使用-lt,-gt,ge等比较运算符,详情参考:整数比较 文件测试使用 -d, -f, -x等运算发,详情参考:文件测试 逻辑判断使用 && ...
- Javascript中实现继承的方式
js中实现继承和传统的面向对象语言中有所不同:传统的面向对象语言的继承由类来实现,而在js中,是通过构造原型来实现的,原型与如下几个术语有关: ①构造函数:在构造函数内部拥有一个prototype属性 ...