filters
dbase.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef DBASE_H
00022 #define DBASE_H
00023
00024 #include <qdatastream.h>
00025 #include <qdatetime.h>
00026 #include <qfile.h>
00027 #include <qstring.h>
00028 #include <qstringlist.h>
00029
00030 class DBaseField
00031 {
00032 public:
00033 QString name;
00034 enum { Unknown, Character, Date, Numeric, Logical, Memo } type;
00035 unsigned length;
00036 unsigned decimals;
00037 };
00038
00039 class DBase
00040 {
00041
00042 public:
00043 DBase();
00044 ~DBase();
00045
00046 QPtrList<DBaseField> fields;
00047
00048 bool load( const QString& filename );
00049 QStringList readRecord( unsigned recno );
00050 void close();
00051
00052 unsigned recordCount(){ return m_recordCount; }
00053 int version(){ return m_version; }
00054 QDate lastUpdate(){ return m_lastUpdate; }
00055
00056 private:
00057
00058 QFile m_file;
00059 QDataStream m_stream;
00060 int m_version;
00061 QDate m_lastUpdate;
00062 unsigned m_recordCount;
00063 unsigned m_headerLength;
00064 unsigned m_recordLength;
00065 };
00066
00067 #endif
|