У меня есть данные json, как показано ниже
{id=1243027559861780482, text='RT @KKMPutrajaya: People who smoke tobacco products', lang='en', user={id=545091753, name='Fiqtion', screenName='SyafiqAzrin', location='null', followersCount=415}, retweetCount=0, favoriteCount=0}
{id=1243027565750583297, text='It's good to be back', lang='in', user={id=1010258604, name='?', screenName='shnadzirah', location='Puchong', followersCount=185}, retweetCount=0, favoriteCount=0}
Я извлекаю вышеуказанные данные из твиттера с помощью kakka и затем отправляю данные в функцию spark scala для обработки текста json и моя функция spark scala выглядит следующим образом:
def processConsumerRec(consumerRecord : ConsumerRecord[String,String] ) : String = {
val key = consumerRecord.key()
val value = consumerRecord.value()
val jsonreader = new JsonReader(new StringReader(new_val))
jsonreader.setLenient(true)
val tweet : Tweet = new Gson().fromJson(jsonreader, classOf[Tweet])
println (tweet.getLang)
val processedData = tweet.getLang
return processedData
}
Когда я запускаю программу, она дает мне следующее исключение:
com.google.gson.stream.MalformedJsonException: Unterminated object
Я обнаружил проблему в во вторых json данных есть инвертированная запятая (') в текстовом атрибуте, и это создает проблему, нет проблем при использовании первых json данных, поскольку нет инвертированной запятой до конца какого-либо конкретного атрибута.
Посоветуйте, пожалуйста, как мне преодолеть эту ситуацию. Я прошел через несколько решений stackoverflow и перепробовал многие из них, но это не решило проблему