【发布时间】:2021-03-25 04:40:48
【问题描述】:
我正在努力使用 Power Automate 从 CSV 文件自动导入(到 SharePoint 列表)数据。
我有一个成功的过程,它在 OneDrive 上获取 CSV 并将数据分离到一个数组中,然后将其导入到 SharePoint 列表中。
当我更改触发器以从 Outlook 中查找 CSV 附件时,我遇到了各种编码问题。
流程的开始是:
电子邮件到达时
->
初始化空字符串变量(fileContent)
->
循环(获取附件内容)
将文件内容设置为附件内容(这是关闭编码的地方)
-->
初始化 CSV 数组
价值 = split(decodeUriComponent(replace(replace(uriComponent(variables('fileContent')),'%0D',''),'%0A','#NL#')),'#NL#')
(--> 那么,几个额外的步骤可以正常工作)
CSV 数组初始化中表达式复杂的原因是将 CSV 文件分成组件行,从而编码和解码为 URI 组件。
我遇到的问题是附件内容显示为好像编码已关闭see pictured。此后,所有其他步骤都是错误的。然后我检查从 OneDrive 获取相同文件时的输出,输出看起来正确。因此,我尝试将附件添加到 OneDrive,然后从 OneDrive 获取数据。但这最终以相同的奇怪编码结束。如果我不先将附件内容放入变量中也是一样的——如果我在后面的步骤中直接引用它,编码看起来完全一样。
该文件似乎没有什么特别奇怪的地方。当我查看附件中的 contentBytes 并将其通过 base64 解码器时,没问题。但不是在 Power Automate 中。我需要做些什么来指定编码吗?
感谢您的帮助!
【问题讨论】:
-
经过更多处理,非 UTF16 编码的文件不会出现这种情况。但是,不幸的是,这个过程存在,因为我必须处理正在通过电子邮件发送的文件......它们是 UTF16。考虑到这一点,有没有办法使用这个文件或告诉 P.A.它是哪种编码?
标签: csv sharepoint power-automate