TabFileParser

class axioma.core.dp.TabFileParser

Разборщик текстового файла TAB. Производит разборку файла MapInfo TAB и преобразует его во внутреннюю структуру

Тип источника данных TypeSource:

Наименование величины

Значение

Описание

tsUnknown

0

Неизвестный формат

tsNative

1

Формат Mapinfo

tsRaster

2

Растр

tsSHP

3

Shapefile

tsDBF

4

DBF

tsODBC

5

ODBC

tsWMS

6

WMS

tsWFS

7

WFS

tsLinked

8

Связанная таблица

tsAscii

9

CSV

tsTileServer

10

Тайл сервер

tsXls

11

Excel

TabFileParser()

Конструктор

TabFileParser(ts)
Параметры

ts (TypeSource) – Тип источника данных

Конструктор

attributeList()

Список атрибутивных полей

Тип результата

list [ TabField ]

codecAttributes()

Кодек для преобразования строковых атрибутов

Тип результата

QTextCodec

coordSysString()

Поиск в метаданных координатной системы

Результат

Строка PRJ если найдена или пустая строка

Тип результата

str

externalFile()

Если присутствует ссылка на внешний файл, возвращает его наименование

Тип результата

QFileInfo

metadata()

Возвращает метаданные

Тип результата

TabMetadata

parse(fileName)

Производится разбор файла TAB и преобразование во внутреннюю структуру

Параметры

fileName (str) – Наименование файла

parse(fileInfo)

Производится разбор файла TAB и преобразование во внутреннюю структуру

Параметры

fileInfo (QFileInfo) – Файл

print(out)

Вывод в поток в формате Mapinfo TAB

Параметры

out (QTextStream) – Ранее созданный объект потока

Если в файле присутствуют точки привязки, возвращает их список

Тип результата

list [ TabRasterCoordLink ]

rasterLayerProperties()

Если это растр, возвращается свойства отображения этого растра

Тип результата

TabRasterLayerProperties

readOnly()

Возвращает установленное в метаданных соответствующее свойство

Результат

True, если да. В противном случае False

Тип результата

bool

rect()

Ограничивающий прямоугольник. Берется из метаданных

Результат

прямоугольник или пустой QRectF, если в метаданных ничего не найдено

Тип результата

QRectF

setExternalFile(fi)

Установка нового значения внешнего файла

Параметры

fi (QFileInfo) – Новое имя файла

setMetadata(meta)

Установка новых метаданных

Параметры

meta (TabMetadata) – Метаданные

setTabFile(value)

Установка имени TAB файла

Параметры

value (str) – Имя файла

setTabFile(value)

Установка имени TAB файла

Параметры

value (QFileInfo) – Имя файла

setTextCodecAttributes(codec)

Установка кодовой страницы для атрибутов

Параметры

codec (QTextCodec) – Кодек

setTextCodecFile(codec)

Установка нового значения кодека файла

Параметры

codec (QTextCodec) – Кодек

tabFile()

Установленное или переданное в метод parse наименование файла

Тип результата

QFileInfo

tabTypeSource()

Тип источника в текстовом виде

Тип результата

str

typeSource()

Тип источника данных

Тип результата

TypeSource

Пример использования:

filename = 'world.tab'
parser = TabFileParser()
parser.parse(filename) # Разбираем
meta = parser.metadata() # Берем метаданные
meta.setValue('\IsReadOnly', 'TRUE') # Меняем значение
parser.setMetadata(meta) # Меняем метаданные
file = QFile('world_out.tab') # Создаем выходной файлы
if (file.open(QIODevice.WriteOnly)):
    stream = QTextStream(file ) # Сощдаем поток
    parser.print(stream) # Пишем в поток