Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何将数组[Row]放入JSON字符串_Arrays_Json_Scala_Apache Spark - Fatal编程技术网

Arrays 如何将数组[Row]放入JSON字符串

Arrays 如何将数组[Row]放入JSON字符串,arrays,json,scala,apache-spark,Arrays,Json,Scala,Apache Spark,我有Array[Row]调用arr(我是在df.collect()之后获得的),我想将其作为键和值对传入JSON字符串: val result = """{"field1": "A", "arr": [""" + arr + """]}""" 应该是: {"field1": "A", "arr": [ {"name":"Ford", "model": "Fiesta"}, {"name":"Ford", "model": "Mustang"}, ...

我有
Array[Row]
调用
arr
(我是在
df.collect()
之后获得的),我想将其作为
键和
值对传入JSON字符串:

val result = """{"field1": "A", "arr": [""" + arr + """]}"""
应该是:

{"field1": "A", "arr": [
       {"name":"Ford", "model": "Fiesta"},
       {"name":"Ford", "model": "Mustang"},
       ...
]}
如果我按照上面的方式做,它将不起作用

我应该迭代这个数组并手动定义每个参数吗

arr.get(i).get(arr.get(i).fieldIndex("field1")).toString()

您应该按照philantrovert在问题评论中的建议,使用
.toJSON
执行以下操作

val result = """{"field1":"A","arr":"""+df.toJSON.collectAsList()+"""}"""
如果使用的是
arr
变量,则可以执行以下操作

val arr = df.toJSON.collectAsList()
val result = """{"field1":"A","arr":"""+arr+"""}"""

为什么不使用
来使用json
(使用数据帧)或
来使用rdd来使用json
df.collect()。我该怎么处理它?