如何从Powershell中的文件创建数组?



我想读取一个文件并将其所有内容加载到一个数组中,一个文件行=一个数组成员。 出于一个奇怪的原因 - 我无法做到这一点,它不断将所有行"合并"为 1 行。 我尝试了几种方法——

1(获取要列出的文件内容,然后

`$FilesList = New-Object System.Collections.Generic.List[String]
foreach($line in Get-Content $OutputFileName) {
$FilesList.Add($line)
}

这给了我很好的清单,但是——[String[]]$FilesArray = $FilesList.ToArray();我收到——$FilesArray[0] -> line1 line2 [0]$FilesArray[1] -> line1 line2 [1]

2(使用解决方案-[string[]]$arrayFromFile = Get-Content -Path $OutputFileName $arrayFromFile = [string[]](Get-Content -Path $OutputFileName)打印$arrayFromFile[0] 和$arrayFromFile[1] 时的结果相同

3( 使用解决方案 -[String[]]$arrayFromFile = [IO.File]::ReadAllLines($OutputFileName)打印$arrayFromFile[0] 和$arrayFromFile[1] 时的结果相同

我做错了什么,我怎么能创建一个列表而不是一个数组? 问题是我需要允许客户端在值之间进行选择,因此接收可以选择特定位置的数组对我来说很重要

好的,找到了问题。 与数组无关。 问题是 Write-Output 无法接收参数"$array[index]",然后打印整个数组,然后打印索引本身。

最新更新