欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

[qtp]透过vbscript往文本文件中指定位置插入指定内容

更新时间: 2014-01-05 01:52:18 责任编辑: Author_N1

 

[QTP]通过vbscript往文本文件中指定位置插入指定内容

'作者:席飞剑

'日期:2013-1-25

'功能:往文本文件中指定位置插入指定内容

'参数:txtFile为需要读取的文件,可以根据需要将以下操作封装成一个函数。

'>>>>>>>>>>>>>>>>>尝试往文本文件中指定位置插入指定的文本内容<<<<<<<<<<<<<<<<<<<<

假设:"C:\Users\xifeijian\Desktop\test.txt"存在,并且文件内容为:

111111111
222222222
333333333
444444444

目标:希望在

333333333
444444444之间插入指定的内容I'm xifeijian

实现:

vbscript没有指针,所以实现这类功能,没有其它高级程序语言那么方便,可以直接seek到某位置,再插入需要的内容,换个思路,可以通过split函数将原内容按标记符进行分组,再拼接也是一个不错的选择:

Const ForReading = 1, ForWriting = 2
  Dim fso, oFile
  txtFile="C:\Users\xifeijian\Desktop\test.txt"
  Set fso = CreateObject("Scripting.FileSystemObject")
  If fso.FileExists(txtFile) Then
   Set oFile= fso.OpenTextFile(txtFile,ForReading)
   ReadLineTextFile =oFile.ReadLine  '读取文件第一行内容 
   While oFile.AtEndOfStream = false
    ReadLineTextFile = ReadLineTextFile &vbnewline& oFile.ReadLine  '遍历文件其它内容
   wend
   Set oFile= fso.OpenTextFile(txtFile,ForWriting)
   deli1="333333333"   '需要插入内容的起始位置
   toAdd1="I'm xifeijian"    '需要插入的文本内容
   arr=split(ReadLineTextFile,deli1,-1,1)    '按照指定分隔符进行字符串分割,但这里我并未做是否能够找到指定分隔符的异常处理,否则后续使用arr(0)时会报数组越界的。
   ReadLineTextFile=arr(0)&deli1&toAdd1&arr(1)
'   msgbox ReadLineTextFile
   oFile.Write ReadLineTextFile
   oFile.close()    '关闭对象
  else
   print "File Not Found"
  End If

  Set fso = nothing  '释放对象

运行结束后,文本文件的内容则变为:

111111111
222222222
333333333I'm xifeijian
444444444


 

 

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 01:52:18
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/2287/
本文WWW.DOC100.NET DOC100.NET版权所有。