插入替换删除文本文件中的某一行
2008-07-15 12:15
453 查看
'在网上找了关于这方面的资料,发现跟本用不起来
'后来我拷下来,一个一个调试,终于达到预想的效果
'立此存照2008-7-15Jason
PrivateSubForm_Load() DimstrtempAsString OpenApp.Path&"/18XX.txt"ForInputAs#1 DoUntilEOF(1) LineInput#1,strtemp Text1.Text=Text1.Text+strtemp+vbCrLf Loop Close#1 EndSub PrivateSubCommand1_Click()'读取不含注解的第几行 DimStrtmpAsString'定义Strtmp为字符型 Dimflag1AsBoolean'定义标识符 DimiAsLong'定义i为长型 DimaAsLong'定义a为长型 Dimxxxx OpenApp.Path&"/18XX.txt"ForInputAs#1'打开文件路径 i=0'标识关 DoWhileNotEOF(1)'开始循环 LineInput#1,Strtmp'行输入 IfMid(Strtmp,1,1)="#"Then'如果某一行的前四个字符为"■■■■" Else i=i+1 Ifi=Val(Text3.Text)Then'i值从文本框输入数字 Text1.Text=Strtmp'显示结果 ExitDo EndIf TimeDelay200'累加延时读入 Text4.Text=i+1'累加 Ifi>=Val(Text4.Text)Then EndIf EndIf Loop Close#1 EndSub '■■■■■■■■■■■■■■■■■■■■■■■■删除一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ PrivateSubCommand3_Click() CallDELETE(App.Path&"/18XX.txt","~",Val(Text5.Text))'调用删除子程序 EndSub 'strSourceFile原始文件完整名 'strTargetFile生成新文件的完整名 'intRow操作的行数 SubDELETE(strSourceFileAsString,strTargetFileAsString,intRowAsLong) DimfilenumAsInteger DimfileContentsAsString DimfileInfo()AsString DimiAsInteger DimjAsInteger Dimaa filenum=FreeFile OpenstrSourceFileForBinaryAs#filenum fileContents=Space(LOF(filenum)) Get#filenum,,fileContents Closefilenum fileInfo=Split(fileContents,vbCrLf)'取出源文件行数,按照回车换行来分隔成数组 filenum=FreeFile 'IfDir(strTargetFile,vbNormal)<>""Then'这句的意是,如果想要建立的临时文件同名的文件存在的话,就把已存在的文件删除 'KillstrTargetFile 'EndIf DimFilestr()AsString '删除一行代码块 strTargetFile="1409.txt"'把临时文件命名为1409.txt OpenstrTargetFileForAppendAs#filenum'以追加的方式打开文件 '循环每一行 Fori=0ToUBound(fileInfo)-1'行循环至结束 Ifi<>intRow-1Then Print#filenum,fileInfo(i) EndIf Next Close#filenum aa=strSourceFile KillstrSourceFile'把原来的文件删除 NamestrTargetFileAsaa'把临时文件名改为原来的文件名 Text1.Text=""'清空text1 DimstrtempAsString OpenApp.Path&"/18XX.txt"ForInputAs#1'把所有内容读入text1,以观看结果 DoUntilEOF(1) LineInput#1,strtemp Text1.Text=Text1.Text+strtemp+vbCrLf Loop Close#1 'MsgBox"删除完成!" EndSub '■■■■■■■■■■■■■■■■■■■■■■■■删除一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ '■■■■■■■■■■■■■■■■■■■■■■■■替换一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ PrivateSubCommand4_Click() CallCOVER(App.Path&"/18XX.txt",Text2.Text,Val(Text5.Text)) EndSub 'strSourceFile原始文件完整名 'strTargetFile生成新文件的完整名 'intRow操作的行数 SubCOVER(strSourceFileAsString,strTargetFileAsString,intRowAsLong) DimfilenumAsInteger DimfileContentsAsString DimfileInfo()AsString DimiAsInteger DimjAsInteger Dimaa filenum=FreeFile OpenstrSourceFileForBinaryAs#filenum fileContents=Space(LOF(filenum)) Get#filenum,,fileContents Closefilenum fileInfo=Split(fileContents,vbCrLf) '取出源文件行数,按照回车换行来分隔成数组 filenum=FreeFile 'IfDir(strTargetFile,vbNormal)<>""Then 'KillstrTargetFile 'EndIf DimFilestr()AsString '替换一行代码块 strTargetFile="1409.txt" OpenstrTargetFileForAppendAs#filenum '循环每一行 Fori=0ToUBound(fileInfo)-1 Ifi=intRow-1Then Print#filenum,Text2.Text Else Print#filenum,fileInfo(i)'保留原来的行,位置后移一位 EndIf Nexti Close#filenum aa=strSourceFile KillstrSourceFile NamestrTargetFileAsaa Text1.Text="" DimstrtempAsString OpenApp.Path&"/18XX.txt"ForInputAs#1 DoUntilEOF(1) LineInput#1,strtemp Text1.Text=Text1.Text+strtemp+vbCrLf Loop Close#1 'MsgBox"替换完成!" EndSub '■■■■■■■■■■■■■■■■■■■■■■■■替换一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ '■■■■■■■■■■■■■■■■■■■■■■■■插入一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ PrivateSubCommand5_Click() CallINSERTTXT(App.Path&"/18XX.txt",Text6.Text,Val(Text5.Text)) EndSub 'strSourceFile原始文件完整名 'strTargetFile生成新文件的完整名 'intRow操作的行数 SubINSERTTXT(strSourceFileAsString,strTargetFileAsString,intRowAsLong) DimfilenumAsInteger DimfileContentsAsString DimfileInfo()AsString DimiAsInteger DimjAsInteger Dimaa filenum=FreeFile OpenstrSourceFileForBinaryAs#filenum fileContents=Space(LOF(filenum)) Get#filenum,,fileContents Closefilenum fileInfo=Split(fileContents,vbCrLf) '取出源文件行数,按照回车换行来分隔成数组 filenum=FreeFile 'IfDir(strTargetFile,vbNormal)<>""Then 'KillstrTargetFile 'EndIf DimFilestr()AsString '插入一行代码块 strTargetFile="1409.txt" OpenstrTargetFileForAppendAs#filenum '循环每一行 Fori=0ToUBound(fileInfo)-1 Ifi=intRow-1Then Print#filenum,Text6.Text Else EndIf Print#filenum,fileInfo(i)'保留原来的行,位置后移一位 Nexti Close#filenum aa=strSourceFile KillstrSourceFile NamestrTargetFileAsaa Text1.Text="" DimstrtempAsString OpenApp.Path&"/18XX.txt"ForInputAs#1 DoUntilEOF(1) LineInput#1,strtemp Text1.Text=Text1.Text+strtemp+vbCrLf Loop Close#1 'MsgBox"插入完成!" EndSub '■■■■■■■■■■■■■■■■■■■■■■■■插入一行■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ PrivateSubCommand6_Click() UnloadMe End EndSub
相关文章推荐
- VB中删除、替换或者插入内容到文本中某一行,及文本行列的处理实例
- VB中删除、替换或者插入内容到文本中某一行及解析文本行列的处理实例(转)
- VB中删除、替换或者插入内容到文本中某一行
- Linux 删除和替换文件中某一行的方法【推荐】
- 【Shell】脚本中删除和替换文件中某一行的方法
- vb6 对文件的写入、替换、删除和插入某行操作
- PHP文件操作 - 替换某行,插入某行,删除某行,获取行号
- RandomAccessFile 文件的插入和删除一行文字
- Linux 删除和替换文件中某一行的方法
- Jquery进行文本处理时,总共分为6种模式:内部插入、外部插入、包裹、替换、删除、复制
- 文件的插入和删除一行文字
- 添加、删除、插入和替换[文本节点]
- C# 替换文本文件中的某一行 (要求此文件存在)
- Javascript进阶篇——(DOM—节点---插入、删除和替换元素、创建元素、创建文本节点)—笔记整理
- C读写文件--逐行输出、删除指定的一行,指定位置插入
- 11.21课堂笔记-查找节点和创建节点、插入节点和删除节点、复制节点替换节点、包裹节点和属性操作、样式操作、设置和获取HTML、文本和值
- sed处理大txt文件(1G) 比如替换某一串字符串,或者删除一行
- Linux 删除和替换文件中某一行的方法
- PHP文件操作 - 替换某行,插入某行,删除某行,获取行号
- C# 替换文本文件中的某一行 (要求此文件存在)