如何将字符串中带有双引号的json文件加载到spark scala中的数据框中
Posted
技术标签:
【中文标题】如何将字符串中带有双引号的json文件加载到spark scala中的数据框中【英文标题】:How to load a json file which is having double quotes within a string into a dataframe in spark scala 【发布时间】:2021-11-13 21:54:54 【问题描述】:我有以下 json 文件,我想将其读入数据帧,但由于 json 文件在字符串中有双引号,所以我收到错误。例如:
数据: "Field1":"值"ue 1", "字段2":"值2", “字段3”:“va”lu“e3”
所需的输出" 字段 1、字段 2、字段 3 值1,值2,值2
【问题讨论】:
字符串从何而来?目前它不是有效的 json 【参考方案1】:您的 json 无效(因为嵌套的双引号),这就是您使用 Spark 数据源 API 或任何其他 Json 解析器读取文件时出错的原因。
您可以做的是将文件作为字符串数据集读取,然后使用正则表达式清理每个字符串以删除无用的双引号,最后使用“from_json”函数解析每个字符串并将数据集从一个 Dataset[String] 到一个 Dataset[]。
【讨论】:
以上是关于如何将字符串中带有双引号的json文件加载到spark scala中的数据框中的主要内容,如果未能解决你的问题,请参考以下文章
解决json string转object,value值存在英语双引号,无法解析问题。以及遇到value值中有双引号,如何解析成功。
解决json string转object,value值存在英语双引号,无法解析问题。以及遇到value值中有双引号,如何解析成功。