首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免'ConvertFrom-Csv | ConvertTo-Json‘创建数组(方括号)

如何避免'ConvertFrom-Csv | ConvertTo-Json‘创建数组(方括号)
EN

Stack Overflow用户
提问于 2021-11-05 10:21:23
回答 1查看 40关注 0票数 0

我有一个非常简单的脚本,旨在转换成一个csv文件到一个json文件,因为这是我需要通过某些中间件传输的文件。当使用下面的代码从csv转换到json时,它会自动在输出两边添加方括号(我相信这意味着它将其转换为数组):

代码语言:javascript
复制
$TestFile = 'E:\TestFile.prn'

if(Test-Path $TestFile) {
    (Get-Content $TestFile| ConvertFrom-Csv) | ConvertTo-Json -compress | Out-File "E:\TestFile.json"
}

这做了我期望它做的所有事情,除了它在结果输出两边添加了方括号。我想要完全相同的输出,但没有方括号。在上面的转换过程中,有没有办法做到这一点,或者有没有办法添加一个额外的命令行来去掉括号?

首先要感谢大家!

诚挚的问候

EN

回答 1

Stack Overflow用户

发布于 2021-11-05 10:53:05

严格地说,方括号是正确的JSON。它返回一个数组,因为它是一个数组。

但是,您只能删除字符串的第一个和最后一个字符:

代码语言:javascript
复制
Import-Csv -Path $TestFile |
    ConvertTo-Json -Compress |
    ForEach-Object { $_.Substring(1, $_.Length - 2) } |
    Out-File "E:\TestFile.json"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69851741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档