使用netopologysuite 's IO Library for GeoJson序列化/反序列化往返会发现
本文关键字:反序列化 序列化 发现 GeoJson for netopologysuite Library IO 使用 | 更新日期: 2023-09-27 18:04:07
我在使用NetTopologySuite的GeoJsonReader来反序列化特征对象时遇到了麻烦。特别是,我收到以下异常(乍一看似乎很简单,所以请继续阅读):
类型为"System"的未处理异常。在Newtonsoft.Json.dll中发生ArgumentException'。附加信息:未找到预期的令牌"{"。
只是做一个简单的往返就会导致这个异常:
public static string DoIt( Feature feature )
{
GeoJsonWriter writer = new GeoJsonWriter();
var geoJson = writer.Write(feature);
GeoJsonReader reader = new GeoJsonReader();
var deserializedFeature = reader.Read<Feature>(geoJson );
}
在这里,geoJson非常简单:
"{'"类型'":'"功能'",'"几何'":{'"类型'":'"多边形'",'"坐标'":[[[-104.50348159865847,40.891762392617345],[-104.50348672999991,40.891415817000279],[-104.50355999200002,40.887782408000135],[-104.5036332529998,40.884149000000093],[-104.50845260799991,40.884357883000121],[-104.51307160051412,40.884558081989375],[-104.51307160051412,40.891762392617345],[-104.50348159865847,40.891762392617345]]]},'"属性'":零}"
请让我知道我做错了什么。顺便说一下,我使用的是NetTopologySuite 1.14, NetTopologySuite. io . geojson 1.14, &Json。净9.0.1。
这实际上是一个bug。修复代码,参见#120