如何根据行号删除(移除)文本文件的特定行?

2024-01-02

我有一个简单的脚本,可以删除文本文件的前 n 行。

Const FOR_READING = 1 
Const FOR_WRITING = 2 
strFileName = "C:\scripts\test.txt" 
iNumberOfLinesToDelete = 5 

Set objFS = CreateObject("Scripting.FileSystemObject") 
Set objTS = objFS.OpenTextFile(strFileName, FOR_READING) 
strContents = objTS.ReadAll 
objTS.Close 

arrLines = Split(strContents, vbNewLine) 
Set objTS = objFS.OpenTextFile(strFileName, FOR_WRITING) 

For i=0 To UBound(arrLines) 
   If i > (iNumberOfLinesToDelete - 1) Then 
      objTS.WriteLine arrLines(i) 
   End If 
Next 

我想问如果您只想删除文本文件中的特定行,是否有办法?意义基于行号文本文件的。

例如,

1
2
This is line 3
4
5

您想要删除第 3 行。特别是第 3 行。

Result:

1
2
4
5

有没有办法如何做到这一点?

非常感谢您的回答和帮助。


感谢 Ekkehard.Horner 发现了我的错误。

Update:

Const FOR_READING = 1 
Const FOR_WRITING = 2 
strFileName = "C:\scripts\test.txt" 

Set objFS = CreateObject("Scripting.FileSystemObject") 
Set objTS = objFS.OpenTextFile(strFileName, FOR_READING) 
strContents = objTS.ReadAll 
objTS.Close 

arrLines = Split(strContents, vbNewLine) 
Set objTS = objFS.OpenTextFile(strFileName, FOR_WRITING) 

For i= 0 To UBound(arrLines) 
   If ShouldSkip(i) Then 
      objTS.WriteLine arrLines(i) 
   End If 
Next 

Function ShouldSkip(i)
    Dim arrSkipLines, x
    arrSkipLines = Array(1, 22, 32, 42, 169)
    For Each x In arrSkipLines
        If x = i Then
            ShouldSkip = True
            Exit Function
        End If
    Next

    ShouldSkip = False
End Function
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何根据行号删除(移除)文本文件的特定行? 的相关文章

  • 并排启动两个资源管理器窗口

    有没有办法使用批处理脚本并排 垂直平铺 启动两个资源管理器窗口 如果没有 我该如何使用 VBS 来做到这一点 我已经修改了上面的VBS脚本Hackoo完全按照OP的要求去做 脚本中的注释准确地解释了它将做什么 如果两个窗口未设置到正确位置
  • 如果 vbs 脚本崩溃,请重新启动它

    我正在尝试制作一个 vb 脚本 如果它崩溃 它将重新启动另一个 vb 脚本 我搜索了又搜索 但我得到的只是如何重新启动程序 并且由于 vb 脚本是后台进程 因此当您在 Win32 Process 中搜索时它不起作用 这是我的代码 set S
  • VB错误“需要对象”

    当我运行以下脚本时 我在第 54 行 最后一行 收到 需要对象 错误 怎么了 Option Explicit Dim cmdString g strHostFile filepath flexnetpath importcmd dtmTod
  • VBScript:从 Scripting.Dictionary 中对项目进行排序

    我有下面的代码 它获取这样的数据 姓名 1 姓名 4 姓名 2 姓名 3 并像这样列出 是一个复选框 姓名 1 姓名 4 姓名 2 姓名 3
  • 使用 ASP 将参数传递给存储过程

    我正在尝试将一些参数传递给经典 ASP 中的 SQL 存储过程 我看过几篇关于此的帖子 不确定我做错了什么 因为我似乎没有看到我的差异 set conn CreateObject ADODB Connection conn open DSN
  • 使用 cscript.exe 而不是 wscript.exe 在 VBScript 中执行文件

    我知道如何使用 wscript exe 执行 exe 如下所示 Set WshShell WScript CreateObject WScript Shell WshShell Run c myprogram exe 但我被迫使用 cscr
  • 在vbscript中读取文本文件的某一行

    有没有办法使用 vbscript 读取文本文件的某一行并将其存储为变量 谢谢 试试这个例子 Option Explicit Dim ws MyFile Set ws CreateObject WScript Shell MyFile Win
  • 如何使用 VBScript 读取 .zip 文件的内容而不实际解压文件?

    我有一个以父目录开头的 zip 文件 我需要从文件中读取该目录 然后搜索我的硬盘以查看该目录名称是否已存在 如果存在 我会将其删除并替换为 zip 文件的内容 所有这些我都可以做 除了读取 zip 而不实际解压缩文件 zip 文件的大小可以
  • ATL创建的COM接口继承IDispatch但后期绑定不起作用

    这是我的 IDL 文件 IFrame 是一个双接口 同时继承了 IDispatch 和 IUnknown object uuid C5AD0517 37FC 479C 9C7A A063B17E4A2E dual nonextensible
  • VBscript“预期语句”错误

    我正在开发一个 vbscript 程序 但出现了 预期语句 错误 我找不到错误 我看过这个错误的一些示例 但它们对我没有帮助 我是 vbscript 新手 这是代码 Sub SetText tx lw Dim t l r a t 1 l L
  • vbs脚本通过ftp发送文件并检查/删除原始文件

    我正在尝试通过 ftp 发送文件 然后检查该过程是否成功完成 如果成功 我将删除原始文件并仅保留在 FTP 上的目标文件夹中发送的文件 我设法修补了一个连接到 FTP 并发送文件的脚本 但我不确定如何将原始文件夹与 FTP 上的文件夹进行交
  • 如何在VBS中使用Excel内置常量[重复]

    这个问题在这里已经有答案了 我想使用VBScript而不是VBA来处理EXCEL 但是我在调 用Range Find方法时遇到了代码错误 见下文 Function find range wb domain var Dim sheet Dim
  • 如何使用 VbScript 创建选项对话框?

    我有一个第三方应用程序 它调用 vsbscript 文件来执行某些操作 我想提供一个带有选项选择的用户提示 可以是下拉列表或复选框或类似的选项 然而 我能找到的只是输入框选项 我不认为 HTA 适合我的情况 除非有办法从 vbs 文件调用它
  • 将变量从 vbscript 传递到批处理文件

    我正在使用 vbscript 调用批处理文件 我的脚本如下所示 dim shell set shell createobject wscript shell shell run a bat set shell nothing 我的批处理文件
  • FileSystemObject 中文件集合的顺序

    在 VBScript 中 我想获取按创建日期排序的文件夹中的文件列表 我发现为了做到这一点 我需要使用记录集 对我来说似乎有点过分 或自己对集合进行排序 我认为我可以避免它 并且我希望我的代码更短 由于我是创建文件的人 所以我使用以日期 y
  • 用于创建计划任务的 VBScript

    我正在尝试创建一个 VBScript 它创建一个批处理文件 然后创建一个计划任务来运行该批处理文件 到目前为止 我尝试过的所有操作都创建了批处理文件 但没有创建计划任务 并且我没有收到任何错误 这是我到目前为止所拥有的 Option Exp
  • 如何从 .bat 运行 .vbs

    创建了一个广泛的批处理脚本程序来处理一些自动文件管理和打印 我需要调用一个 vbs 文件来执行它的 sendkeys 操作 有没有办法在不冻结程序的情况下完成此任务 我试过了START WAIT my vbs并且脚本在进入 vbs 时冻结
  • Javascript 数组到 VBScript

    我有一个使用 Javascript 构建的对象数组 我需要使用 VBScript 读取它 如下例所示 我找不到在 VbScript 代码中循环遍历数组的方法myArray object 这个例子是我的问题的简化 我无法更改页面的默认语言 这
  • 使用 VBScript 查询 Active Directory

    我要查询活动目录 http en wikipedia org wiki Active Directory使用 VBScript 经典 ASP 我怎样才能做到这一点 要查看 OU 的所有成员 请尝试以下操作 Set objOU GetObje
  • 打开多个 Excel 文件时检查特定 Excel 文件是否打开并激活它

    编辑 在将特定 Excel 文件或其窗口放在前面之前 我需要检查它是否正在运行 仍然打开 老问题 我想将特定的 Excel 窗口设置在前面 使用此 VBScript 代码 我可以通过名称激活一个 Excel 窗口 但由于打开了多个 Exce

随机推荐

  • 在android中制作一个RTL导航抽屉

    我想让我的导航从以下位置打开right to left 但是 一旦我更改这些步骤中的任何一个 我的程序就会在运行应用程序后单击导航后面临错误强制关闭 我的 main activity xml
  • 如何从任务管理器进程列表中的进程列表中区分不同的JavaWS应用程序?

    我正在使用 JavaWS 启动应用程序 然后如何检查该应用程序是否在用户计算机中运行 因为它在任务管理器进程列表中的名称不是我在 JNLP 文件中给出的名称 NOTE 我检查了任务管理器进程列表 但该进程的名称是 javaw exe 并且所
  • 将子元素添加到 React 元素

    如何向 React 组件添加子组件 this props children似乎是只读的 所以不能直接改变它 假设我有 var myComponent
  • .NET 4.5 中 WPF 中的异步事件处理程序无响应

    我创建了一个简单的异步操作 当单击按钮时该操作将被踢出 这是整个代码 public partial class MainWindow Window public MainWindow InitializeComponent private
  • 创建使用 .NET 命名空间的库的最佳实践

    编写一个定义依赖于另一个库的接口的库是一种不好的做法吗 我知道紧密耦合不好 但是在使用 NET 类时这仍然适用吗 例如 在 NET 中 如果我有一个返回 Color 对象的库 它将强制使用我的库的任何内容都依赖于 System Drawin
  • 强制 Maven 仅使用第一级依赖项

    我有一个 Maven Java 项目 我不希望在编译项目时通过一系列子依赖项偶然满足我的项目依赖项 当构建最终的战争时 maven 必须检查所有使用的依赖项并向战争添加必要的库 这对我来说是可以的 但是在编译代码时 我想确保只使用直接依赖项
  • 使用 NumPy 进行 LMS 批量梯度下降

    我正在尝试编写一些非常简单的 LMS 批量梯度下降 但我相信我在梯度方面做错了 数量级与初始值之间的比率theta的元素有很大不同theta所以要么theta 2 不动 例如 如果alpha 1e 8 or theta 1 发射 例如 如果
  • 用于生产用途的 Spring Security kerberos 扩展?

    Spring Security Kerberos 扩展在网站上被列为版本 1 0M2Spring 源网站 http static springsource org spring security site extensions krb in
  • 数的质因数分解

    我正在尝试编写一个程序来查找给定数字的所有素因数 并尝试了以下操作 def factors nr i 2 factors while i
  • Markdown 链接在新选项卡中打开

    有没有办法在新选项卡中打开以下 Markdown 链接 我得到了一些结果降价目标 blank https stackoverflow com questions 4425198 markdown target blank answer 47
  • 使用 Fluent NHibernate 映射没有 setter 的只读属性

    我有一个看起来像这样的域类 我想要 NHibernatesave当前值LastUpdate插入 更新时 以便我可以在查询中使用它 但在检索时忽略它Foo从数据库中获取并让对象本身在我实际访问它时重新计算值 public class Foo
  • Laravel 中的 With() 与 Compact()

    有什么区别吗with and compact 哪一种更有效率 with 是一个 Laravel 函数并且compact 是一个 PHP 函数 具有完全不同的目的 with 允许您将变量传递给视图并compact 从作为字符串参数给出的现有变
  • asp.net mvc highchart 线图 json

    我试图在以下位置获取行示例 http www highcharts com demo line basic grid http www highcharts com demo line basic grid使用 jsonresult 但不知
  • 在其他指令/语句之前的指令/语句是否能保证首先执行?

    考虑一下从书中摘取的片段Java 并发实践作者 Joshua Bloch public class NoVisibility private static boolean ready private static int number pr
  • 同步Access DB和MySQL

    我有一个客户 他有一个使用 Access 的非常大的内部系统 该系统在内部用于处理几乎所有公司数据 他们想要该数据库中的客户数据的 Web 前端 并且将在不同的服务器上运行 鉴于 Access 的限制 前端可能会使用 MySQL 这就留下了
  • 如何拒绝访问我的部分视图的直接 URL?

    我的控制器中有一些部分视图 问题是 如果用户输入网址 www mydomain com mycontroller mypartialview 他们就可以可视化我的部分视图 如何拒绝直接访问 并允许仅从基本视图使用部分视图 Thank s 添
  • 隐式对象创建是否规避了 std::launder 的可达性条件?

    这个问题源于对我的回答的思考给定两个不同类型的对象及其在内存中的相对位置 我可以从指向另一个对象的指针派生出指向另一个对象的指针吗 https stackoverflow com questions 76113351 given two o
  • 谷歌是如何进行桶滚的?

    如果你用谷歌搜索 做桶滚 整个页面就会 360 度旋转 有人猜测谷歌是如何做到这一点的吗 我禁用了 javascript 但它仍然发生 所以也许是 css 轮换 如果你看一下 CSS 代码 body moz animation durati
  • 我可以使用类型化工厂工具来返回基于(枚举)参数的实现吗?

    不确定这是否可能 我需要根据枚举值返回服务的正确实现 因此 手动编码的实现将类似于 public enum MyEnum One Two public class MyFactory public ITypeIWantToCreate Cr
  • 如何根据行号删除(移除)文本文件的特定行?

    我有一个简单的脚本 可以删除文本文件的前 n 行 Const FOR READING 1 Const FOR WRITING 2 strFileName C scripts test txt iNumberOfLinesToDelete 5