如何使用Powershell将多个base64格式转换为CSV文件中的图片



我正在尝试从csv转换一个base64格式的列表,并将其作为第一列调用。你能帮我吗?有一行,一切都很完美,但如果我放了多行,它会开始给我不同的错误信息,或者用表中的所有名称创建一张图片。这是我的代码:

$csv = Import-Csv C:UsersDesktopPictures.csv -Delimiter "~" | Select
$csv.documentbody, $csv.filename | ForEach-Object {

$picname = $csv.filename
$b64 = $csv.documentbody
$filename = "C:UsersDesktop$picname"
$bytes = [Convert]::FromBase64String($b64)
[IO.File]::WriteAllBytes($filename, $bytes)

}

以下是我的数据示例:在此处输入图像描述

我对PowerShell很陌生,无法理解为什么不能一行接一行地读取数据。

非常感谢!!!

在csv上迭代,不要试图在字段上迭代。

$csv = Import-Csv C:UsersDesktopPictures.csv -Delimiter "~" | Select
$csv | ForEach-Object {
$picname = $_.filename
$b64 = $_.documentbody
$filename = "C:UsersDesktop$picname"
$bytes = [Convert]::FromBase64String($b64)
[IO.File]::WriteAllBytes($filename, $bytes)
} 

最新更新