专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > vbScript

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

发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
[QTP]通过vbscript往文本文件中指定位置插入指定内容

'作者:席飞剑

'日期:2013-1-25

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

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

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

假设:"C:UsersxifeijianDesktoptest.txt"存在,并且文件内容为:

111111111
222222222
333333333
444444444

目标:希望在

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

实现:

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

Const ForReading = 1, ForWriting = 2
  Dim fso, oFile
  txtFile="C:UsersxifeijianDesktoptest.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


 

 

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: