当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:如何将文本文件的每一行保存为数组

作者:精品下载站 日期:2024-12-14 04:41:52 浏览:16 分类:玩电脑

PowerShell:如何将文本文件的每一行保存为数组


通常,您可能希望在 PowerShell 中将文本文件的每一行保存为数组。

您可以使用以下方法来执行此操作:

方法 1:使用 Get-Content

$my_array = @(Get-Content players.txt)

此特定示例将名为 players.txt 的文本文件的每一行保存到名为 $my_array 的数组中。

默认情况下,PowerShell 中的 Get-Content cmdlet 将文本文件中的每一行作为单独的字符串返回,因此它将生成一个数组,其中数组的每个元素都是文件中的单独行。

请注意,我们使用 @ 符号来确保结果对象是一个数组。

方法2:使用ReadAllLines

$my_array = [IO.File]::ReadAllLines('c:\users\bobbi\players.txt')

此特定示例还将名为 players.txt 的文本文件的每一行保存到名为 $my_array 的数组中。

此方法比前一种方法快得多,因为它使用直接来自 .NET 框架的 System.IO.File 方法 ReadAllLines

请注意,使用此方法引用文件时必须指定绝对路径,因为 .NET 通常具有与 PowerShell 不同的当前目录。

以下示例展示了如何在实践中使用每种方法以及名为 players.txt 的文件,该文件包含有关各种篮球运动员的信息:

[玩转系统] PowerShell:如何将文本文件的每一行保存为数组

示例:如何在 PowerShell 中将文本文件的每一行保存为数组

我们可以使用以下语法和 Get-Content cmdlet 将名为 players.txt 的文本文件的每一行保存到 PowerShell 中的数组中:

$my_array = @(Get-Content players.txt)

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] PowerShell:如何将文本文件的每一行保存为数组

请注意,这会返回一个数组,其中数组的每个元素代表文件中的一行。

通过使用括号表示法,例如 $my_array[0]$my_array[1]$my_array[2] 等,我们可以从文件中检索第一行、第二行、第三行等。

请注意,我们还可以直接使用 .NET 框架中的 ReadAllLines 方法将文件中的每一行保存为数组:

$my_array = [IO.File]::ReadAllLines('c:\users\bobbi\players.txt') 

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] PowerShell:如何将文本文件的每一行保存为数组

请注意,此方法还返回一个数组,其中数组的每个元素代表文件中的一行。

如果您正在处理一个非常大的文件,那么建议使用此方法,因为它比以前的方法快得多。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯