Sptialite查询空间数据并转换成Geometry,WKBReader,WKTReader使用

jts中封装了Geometry,Point,Polygon等类型,可以将查询空间结果转成Geometry,Point,Polygon等类型,

如查询SELECT ROWID,ASBINARY(Shape) from LQ这个这条语句,ASBINARY方法将Shape字段转成了WKB格式,怎样转Geometry?。

 String sql="SELECT ROWID,ASBINARY(Shape) from LQ";
 Stmt mStmt= database.prepare(sql);//执行SQL
 ...此处省略遍历游标
     if (!mStmt.step())
         return null;
 ByteArrayInStream inStream = new ByteArrayInStream(null);
 byte[] bts = mStmt.column_bytes(1);//获取Shape字段的值
 inStream.setBytes(bts);
 Geometry geo=WKBReader().read(inStream);//将输入流转成Geometry对象

如查询SELECT ROWID,ASText(Shape) from LQ这个这条语句,ASText方法将Shape字段转成了WKT格式,怎样将String转Geomety?。

 String sql="SELECT ROWID,ASText(Shape) from LQ";
 Stmt mStmt= database.prepare(sql);//执行SQL
 ...此处省略遍历游标
     if (!mStmt.step())
         return null;
 Object o = mStmt.column(i);//获取Shape字段的值   
 Geometry geo=WKTReader().read(o.toString());//将String转成Geometry对象

 

你可能感兴趣的:(sqlite)