Documentation ¶
Index ¶
- type DbaseDataType
- type DbfTable
- func (dt *DbfTable) AddBooleanField(fieldName string) (err error)
- func (dt *DbfTable) AddDateField(fieldName string) (err error)
- func (dt *DbfTable) AddFloatField(fieldName string, length byte, decimalPlaces uint8) (err error)
- func (dt *DbfTable) AddNewRecord() (newRecordNumber int, addErr error)
- func (dt *DbfTable) AddNumberField(fieldName string, length byte, decimalPlaces uint8) (err error)
- func (dt *DbfTable) AddTextField(fieldName string, length byte) (err error)
- func (dt *DbfTable) DecimalPlacesInField(fieldName string) (uint8, error)
- func (dt *DbfTable) FieldNames() []string
- func (dt *DbfTable) FieldValue(row int, fieldIndex int) (value string)
- func (dt *DbfTable) FieldValueByName(row int, fieldName string) (value string, err error)
- func (dt *DbfTable) Fields() []FieldDescriptor
- func (dt *DbfTable) Float64FieldValueByName(row int, fieldName string) (value float64, err error)
- func (dt *DbfTable) GetRowAsSlice(row int) []string
- func (dt *DbfTable) HasField(fieldName string) bool
- func (dt *DbfTable) HasRecord(recordNumber int) bool
- func (dt *DbfTable) Int64FieldValueByName(row int, fieldName string) (value int64, err error)
- func (dt *DbfTable) NumberOfRecords() int
- func (dt *DbfTable) RowIsDeleted(row int) bool
- func (dt *DbfTable) Save(filename string, fileMode os.FileMode) error
- func (dt *DbfTable) SetFieldValue(row int, fieldIndex int, value string) (err error)
- func (dt *DbfTable) SetFieldValueByName(row int, fieldName string, value string) (err error)
- type FieldDescriptor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DbaseDataType ¶
type DbaseDataType byte
DbaseDataType is dBase data type, as per https://www.dbase.com/Knowledgebase/INT/db7_file_fmt.htm, under heading "Storage of dBASE Data Types".
const ( Character DbaseDataType = 'C' Logical DbaseDataType = 'L' Date DbaseDataType = 'D' Numeric DbaseDataType = 'N' Float DbaseDataType = 'F' )
type DbfTable ¶
type DbfTable struct {
// contains filtered or unexported fields
}
DbfTable is an in-memory container for dbase formatted data, and state that helps manage that data.
func NewFromByteArray ¶
NewFromByteArray creates a DbfTable, reading it from a raw byte array, expecting the supplied encoding.
func NewFromFile ¶
NewFromFile creates a DbfTable, reading it from a file with the given file name, expecting the supplied encoding.
func (*DbfTable) AddBooleanField ¶
func (*DbfTable) AddDateField ¶
func (*DbfTable) AddFloatField ¶
func (*DbfTable) AddNewRecord ¶
AddNewRecord adds a new empty record to the table, and returns the index number of the record.
func (*DbfTable) AddNumberField ¶
func (*DbfTable) AddTextField ¶
func (*DbfTable) DecimalPlacesInField ¶
DecimalPlacesInField returns the number of decimal places for the field with the given name. If the field does not exist, or does not use decimal places, an error is returned.
func (*DbfTable) FieldNames ¶
FieldNames return the names of fields in the table as a slice
func (*DbfTable) FieldValue ¶
FieldValue returns the content for the record at the given row and field index as a string If the row or field index is invalid, an error is returned .
func (*DbfTable) FieldValueByName ¶
FieldValueByName returns the value of a field given row number and name provided
func (*DbfTable) Fields ¶
func (dt *DbfTable) Fields() []FieldDescriptor
Fields return the fields of the table as a slice
func (*DbfTable) Float64FieldValueByName ¶
Float64FieldValueByName returns the value of a field given row number and name provided as a float64
func (*DbfTable) GetRowAsSlice ¶
GetRowAsSlice return the record values for the row specified as a string slice
func (*DbfTable) HasField ¶
HasField returns true if the table has a field with the given name If the field does not exist an error is returned.
func (*DbfTable) HasRecord ¶
HasRecord returns true if the table has a record with the given number otherwise, false is returned. Use this method before FieldValue() to avoid index-out-of-range errors.
func (*DbfTable) Int64FieldValueByName ¶
Int64FieldValueByName returns the value of a field given row number and name provided as an int64
func (*DbfTable) NumberOfRecords ¶
NumberOfRecords returns the number of records in the table
func (*DbfTable) RowIsDeleted ¶
RowIsDeleted returns whether a row has marked as deleted
func (*DbfTable) SetFieldValue ¶
SetFieldValue sets the value for the given row and field index as specified If the field index is invalid, or the value is incompatible with the field's type, an error is returned.
func (*DbfTable) SetFieldValueByName ¶
SetFieldValueByName sets the value for the given row and field name as specified If the field name does not exist, or the value is incompatible with the field's type, an error is returned.
type FieldDescriptor ¶
type FieldDescriptor struct {
// contains filtered or unexported fields
}
FieldDescriptor describes one field/column in a DbfTable as per https://www.dbase.com/Knowledgebase/INT/db7_file_fmt.htm, Heading 1.2.
func (*FieldDescriptor) DecimalPlaces ¶
func (fd *FieldDescriptor) DecimalPlaces() byte
DecimalPlaces returns the count of decimal places for the field
func (*FieldDescriptor) FieldType ¶
func (fd *FieldDescriptor) FieldType() DbaseDataType
FieldType returns the type of data stored for the field as a DbaseDataType
func (*FieldDescriptor) Length ¶
func (fd *FieldDescriptor) Length() byte
Length returns the length of data stored for the field
func (*FieldDescriptor) Name ¶
func (fd *FieldDescriptor) Name() string
Name returns the column name of the field