PowerShell如何将CSV字符串变量直接输出到Out-GridView分栏显示
解决方案
你可以直接使用PowerShell内置的ConvertFrom-Csv cmdlet处理内存中的CSV格式字符串,无需将内容落地为本地磁盘文件,即可解析为结构化对象输出到Out-GridView分栏展示。
原代码的问题在于直接将纯文本字符串传给Out-GridView,程序会将每行内容识别为单个字符串对象,仅展示默认的字符串属性,不会按逗号拆分列。
正确实现代码如下:
# 拼接内存中的CSV格式字符串 $rows = "COL1,COL2,COL3`n" $rows += "val1,val2,val3`n" $rows += "test1,test2,test3`n" # 解析CSV字符串为结构化对象后输出到分栏视图 $rows | ConvertFrom-Csv | Out-GridView
补充说明
ConvertFrom-Csv默认使用逗号作为列分隔符,如果你使用其他格式的分隔符,可以通过-Delimiter参数指定,例如使用制表符作为分隔符的场景可写为ConvertFrom-Csv -Delimiter "t"`- 如果CSV内容中存在带逗号的引号包裹字段,
ConvertFrom-Csv也会遵循CSV标准自动识别,不需要额外处理
内容的提问来源于stack exchange,提问作者digitalbunny
相关产品推荐
相关产品推荐

