这里需要注意继核羡承 XMLDataFileEncrypt
好了,我们可以开始测试了
直接运行,会生成一个xml文件,如下
当我们按下s键,更改xml里面的数据,如下
本次桥明水文结束
打开Unity,新建一个空工程,具体如下图
在工程中,新建一个脚本“XmlTest”,双击脚本或者右键“Open C# Project”打开脚本,具体如下图
在“XmlTest”编辑代码,首先引用“System.IO”和“System.Xml”命名空间,然后在“Start”函数里面调用创建Xml函数,接着实现创建函数,具体代码和代码说明如下图
“XmlTest”脚本的具体内容如下:
using UnityEngine
using System.IO
using System.Xml
public class XmlTest : MonoBehaviour {
// Use this for initialization
void Start () {
CreateXml ()
}
///
/// Creates the xml.
///
private void CreateXml() {
//设置保存路径
string path = Application.dataPath + "/XmlData.xml"
正芦 //判断文件是否存在
if(File.Exists (path) == false){
//创建一个xml文件
XmlDocument xml = new XmlDocument ()
//创建最上层节点
XmlElement root = xml.CreateElement ("Object")
//创建子节点
XmlElement element = xml.CreateElement ("Message")
element.SetAttribute ("Id","1")
//创建子节点的第一个子节点,设置属性并添加内容
XmlElement elementChild1 = xml.CreateElement ("Contents")
elementChild1.SetAttribute ("Name","Any")
elementChild1.InnerText = "One More Try!"
//创建子节点的第二个子节点,设置属性并添加内容
XmlElement elementChild2 = xml.CreateElement ("Mission")
elementChild2.SetAttribute ("Task","First")
elementChild2.InnerText = "Just Do It!"
//把节点一层一层的添加至xml中,注意他们之间的先后顺序,这是生成XML文件的顺序
element.AppendChild (elementChild1)
element.AppendChild (elementChild2)
root.AppendChild (element)
xml.AppendChild 旦清铅(root)
//保存模好XML文档
xml.Save (path)
Debug.Log ("Xml 创建成功!")
}
}
}
脚本编译正确,回到Unity界面,在场景中新建一个“GameObject”,并把脚本“XmlTest”挂载上去,具体如下图
运行场景,在控制台Console即可看到创建成功的打印结果,具体如下图
在工程中,也会看到创建的“XmlData”文件(若没有,请右键刷新,快捷方式“mand + R”或“Ctrl + R”),具体如下图
通过shell脚本修改xml文橘培件中的某行记录跟之前一样,假设有如下的xml文件:
web.xml中有如下内容:
[html] view plain copy
cookieName
sessionName
需求:现在需要利用shell脚本替换掉cookieName对应的value值,
利用shell实现方式如下:
shell脚本部分:
declare -i Dline
getline()
{
grep -n "cookieName" ${DOMAIN_HOME}/portal/ROOT/WEB-INF/web.xml | head -1 |
cut -d ":" -f 1
圆竖唯 }
getlinenum()
{
awk "BEGIN{a=`getline`b="1"c=(a+b)print c}"
}
Dline=`getlinenum`
echo "line is ${Dline}"
sed -i "${Dline},${Dline}s/.*/ \替换的value值\<\/param-value\>/g"
path/web.xml
说明:这个跟之前的替换属性文件的区别在于,这个是精确纤亮定位到行的,然后替换正行code。
这个xml和properties 中都是默认需要替换的内容是唯一的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)