我尝试仅使用spark API将Row
DataFrame
转换为json字符串。
来自输入Row
+----------------+-----------+
| someThing| else|
+----------------+-----------+
| life| 42|
+----------------+-----------+
与
myDataFrame
.select(struct("*").as("col"))
.select(to_json(col("col")))
.writeStream()
.foreach(new KafkaWriter())
.start()
使用KafkaWriter
,即使用row.toString()
我得到了:
[{
"someThing":"life",
"else":42
}]
当我希望得到这个时:
{
"someThing":"life",
"else":42
}
(没有[]
)
有什么想法吗?
答案 0 :(得分:2)
刚刚找到解决方案。使用Row.mkString而不是Row.toString解决了我的问题。
答案 1 :(得分:-1)