在flink中使用kafka的json文件时,我遇到以下错误:
原因:org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.io.jsoneofexception:输入意外结束:对象应为关闭标记(开始标记位于[源:(byte[])“[{”;行:1,列:2]),位于[源:(byte[])“[{”;行:1,列:5]
这是我的json文件:
[{
"locationID": "ASK",
"temp": 35
},
{
"locationID": "BC",
"temp": 45
},
{
"locationID":"CHD",
"temp": 55
},
{
"locationID": "RAJ",
"temp": 65
},
{
"locationID": "EGY",
"temp": 55
}]
代码如下:
为什么我不能用这个做一个键控流
1条答案
按热度按时间o7jaxewo1#
据我所知,你总是需要输入一行json字符串。所以在你的例子中用这个:
[{"locationID": "ASK", "temp": 35}, {"locationID": "BC", "temp": 45}, {"locationID": "CHD", "temp": 55}, {"locationID": "RAJ", "temp": 65}, {"locationID": "EGY", "temp": 55}]
对于更通用的方法,您可以使用以下方法重新格式化多行json字符串:.selectExpr("REPLACE(CAST(value as string), '\n', '') as json")