У меня есть следующий агент для тестирования нового парсера V10 JSON
Json в коде получен из даркской погоды api
Option Public
Option Declare
Sub Initialize
Dim json As String
Dim session As New NotesSession
json = |{
"latitude": 51.2747748,
"longitude": 4.4433923,
"timezone": "Europe/Brussels",
"daily": {
"summary": "Rain today, with high temperatures falling to 3øC next Sunday.",
"icon": "rain",
"data": [{
"time": 1547334000,
"summary": "Rain in the afternoon and breezy starting in the afternoon.",
"icon": "rain",
"sunriseTime": 1547365378,
"sunsetTime": 1547395251,
"moonPhase": 0.23,
"precipIntensity": 0.4115,
"precipIntensityMax": 1.5621,
"precipIntensityMaxTime": 1547380800,
"precipProbability": 0.97,
"precipType": "rain",
"temperatureHigh": 10.56,
"temperatureHighTime": 1547391600,
"temperatureLow": 5.5,
"temperatureLowTime": 1547449200,
"apparentTemperatureHigh": 10.56,
"apparentTemperatureHighTime": 1547391600,
"apparentTemperatureLow": 2.06,
"apparentTemperatureLowTime": 1547427600,
"dewPoint": 6.77,
"humidity": 0.87,
"pressure": 1009.48,
"windSpeed": 7.24,
"windGust": 17.26,
"windGustTime": 1547395200,
"windBearing": 285,
"cloudCover": 0.93,
"uvIndex": 1,
"uvIndexTime": 1547377200,
"visibility": 12.59,
"ozone": 311.57,
"temperatureMin": 7.17,
"temperatureMinTime": 1547416800,
"temperatureMax": 10.56,
"temperatureMaxTime": 1547391600,
"apparentTemperatureMin": 2.64,
"apparentTemperatureMinTime": 1547416800,
"apparentTemperatureMax": 10.56,
"apparentTemperatureMaxTime": 1547391600
}]
},
"offset": 1
}|
json = removeCRLF(json)
Dim jsnav As NotesJSONNavigator
Set jsnav = session.CreateJSONNavigator(json)
Dim el As NOTESJSONELEMENT
Set el = jsnav.getelementbypointer("/latitude")
Print CStr(el.value)
End Sub
Function removeCRLF(json) As String
removeCRLF =Replace(Replace(json, Chr(13), ""),Chr(10),"")
End Function
Я получаю эту ошибку при запуске агента:
Невозможно проанализировать строку JSON:
Отсутствует запятая или '}' после члена объекта. смещение 1791
После некоторого тестирования я обнаружил, что ошибка исходит из специального символа в json (ø в '... падает до 3ºC далее ...').
Кто-нибудь может мне помочь, как избежать / преобразовать символы, которые могут вызвать проблемы при разборе JSON?
PS: анализатор JSON openntf правильно обрабатывает json.