csv 用迭代Xquery获取零长度字符串

wtzytmuj  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(114)

我通过API调用在CSV有效负载上运行以下代码,将其转换为XML,并尝试为每行维护CSV的字段名,但测试时似乎工作正常,但由于“提供的元素名是零长度字符串”而失败:

let $lines := tokenize(/result/text(), '\n')
let $fieldnames:=tokenize($lines[1], '\s*,\s*')
return
<results>
{
  for $line at $i in $lines
  where $i gt 1
  let $fields := tokenize($line, '\s*,\s*')
  return
  <row>{
    for $fieldname at $j in $fieldnames
    return
     element {fn:replace($fieldname,' ','_')} {fn:replace($fields[$j],'"','')}
  }</row>
}</results>

CSV中有数千行,其中一些值为空。
任何帮助都将不胜感激,xquery不是我的强项!
已尝试上述查询

ggazkfy8

ggazkfy81#

错误消息表明输入的第一行包含两个相邻的逗号,或者逗号可能是该行的第一个或最后一个字符。
但是说真的,你怎么能指望人们在看不到输入的情况下调试它呢?

相关问题