Update 'shp_2_txt.cpp'
This commit is contained in:
parent
92ee58e14e
commit
de943c84f0
1 changed files with 16 additions and 5 deletions
|
@ -1,3 +1,10 @@
|
|||
/*
|
||||
http://shapelib.maptools.org/dbf_api.html
|
||||
|
||||
basic funtionality taken from dbfdump.c
|
||||
path to libshp.dll has to be added as a PATH var
|
||||
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
@ -17,18 +24,21 @@ int main(int argc, char const *argv[])
|
|||
char szTitle[12];
|
||||
string filename = "f:\\testing\\shp_2_txt\\MA.dbf";
|
||||
|
||||
// open textfile and dbf handle
|
||||
ofstream txt_file("out.txt");
|
||||
dbfh = DBFOpen(filename.c_str(), "rb");
|
||||
|
||||
// check
|
||||
if (dbfh <= 0)
|
||||
{
|
||||
throw string("File " + filename + " not found");
|
||||
}
|
||||
else
|
||||
{
|
||||
// loop over dbf records
|
||||
for( iRecord = 0; iRecord < DBFGetRecordCount(dbfh); iRecord++ )
|
||||
{
|
||||
|
||||
// loop over fields of record
|
||||
for( i = 0; i < DBFGetFieldCount(dbfh); i++ )
|
||||
{
|
||||
DBFFieldType eType;
|
||||
|
@ -40,6 +50,7 @@ int main(int argc, char const *argv[])
|
|||
string str(szTitle);
|
||||
string line;
|
||||
|
||||
// parse for lat, lon in degrees and orhto height
|
||||
if (szTitle == dec_lat or szTitle == dec_lon or szTitle == ortho_h)
|
||||
{
|
||||
txt_file << DBFReadStringAttribute( dbfh, iRecord, i );
|
||||
|
@ -48,7 +59,7 @@ int main(int argc, char const *argv[])
|
|||
}
|
||||
txt_file << endl;
|
||||
}
|
||||
|
||||
// close dbf handle and textfile
|
||||
DBFClose( dbfh );
|
||||
txt_file.close();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue