我需要帮助将字节数组转换为文件流。我正在使用以下powershell脚本从Web下载文档
$wc = New-Object System.Net.WebClient
$bytearr = $wc.downloaddata('URL')
现在,我需要将此字节数组传递给FileSteam
$FileCreationInfo = New-Object Microsoft.SharePoint.Client.FileCreationInformation
$FileCreationInfo.ContentStream = ## Need to Pass Byte Array as FileStream ##
任何帮助?
答案 0 :(得分:0)
我不熟悉Sharepoint API,但查看FileCreationInformation
class的文档,我看到request.addHeader(HttpHeaders.CONTENT_TYPE, "application/json")
类型为byte[]
。假设它与Content
property具有相同的用途,你可以做到......
$FileCreationInfo.Content = $bytearr
如果您不需要'URL'
处的数据用于填充$FileCreationInfo
以外的任何内容,请考虑拨打ContentStream
property以获取Stream
数据首先......
$FileCreationInfo.ContentStream = $wc.OpenRead('URI')
作为最后的手段,并回答一般问题,你可以"转换"将byte[]
包裹在WebClient.OpenRead
method ...
Stream
到$FileCreationInfo.ContentStream = New-Object -TypeName 'System.IO.MemoryStream' -ArgumentList (,$bytearr)
Stream
我已从代码段中省略了这一点,但如果SharePoint客户端无法处理,请不要忘记MemoryStream
/ Close()
您创建的任何--resume-failed
个对象那对你而言!