Power Automate从SharePoint列表生成CSV时文本换行问题求解
解决Power Automate生成CSV时文本字段换行断裂的问题
问题根源是SharePoint文本字段中的换行符(\n或\r\n)会破坏CSV结构,导致字段被拆分到多行。结合你用逗号作为分隔符的需求,可通过以下两种方式修复:
方式一:替换文本字段中的换行符
直接把文本字段里的换行符替换成内部系统可接受的字符(比如空格),避免字段被拆分。在Power Automate中使用replace()函数处理目标字段:
replace(triggerBody()?['你的文本字段名'], decodeUriComponent('%0A'), ' ')
- 若字段里是
\r\n格式的换行,可把decodeUriComponent('%0A')换成decodeUriComponent('%0D%0A') - 替换后的字符可根据内部系统要求调整,比如
<br>或其他标识
方式二:按CSV规范用双引号包裹字段
CSV标准规定:含换行、分隔符(逗号)的字段需用双引号包裹;若字段本身有双引号,要替换成两个双引号。用嵌套函数处理目标字段:
concat('"', replace(replace(triggerBody()?['你的文本字段名'], '"', '""'), decodeUriComponent('%0A'), '\n'), '"')
处理后,CSV解析时会把整个文本内容识别为单个字段,不会出现换行断裂或逗号拆分的问题。
整合到CSV生成流程中
- 手动拼接CSV行:对每个字段(尤其是文本字段)应用上述处理后,再用逗号拼接成一行,最后加上换行符拼接所有行。
- 使用「创建CSV表」动作:在该动作前先通过「组成数组」或「选择」动作转换文本字段,或者直接在「创建CSV表」的列值设置中嵌入处理函数。
注意:提前测试内部系统对带双引号CSV字段的兼容性,大部分符合CSV规范的系统都支持该格式。
内容的提问来源于stack exchange,提问作者user23230496
相关产品推荐
相关产品推荐

