Почему я не могу удалить шейп-файл?

Я использую библиотеку NetTopologySuite ( https://github.com/synhershko/nettopologysuite)

Я попытался прочитать.shp и.dbf файл. И когда я закончу, удалите все файлы. Но я не могу, потому что некоторые из них используются. Я предполагаю, что я не закрыл файл или читателя, но я не знаю, что я делаю неправильно

Это мой код:

ShapefileReader sfr = new ShapefileReader(fileSHP);
IGeometryCollection gc = sfr.ReadAll();
ShapefileDataReader dataDBF = new ShapefileDataReader(fileSHP, gc.Factory);
dataDBF.Reset();
IEnumerator enum = dataDBF.GetEnumerator();
while (enum.MoveNext()){
...

}
if (!dataDBF.IsClosed)
    dataDBF.Close();

РЕШЕНИЕ

Я нашел ответ

ShapefileReader sfr = new ShapefileReader(fileSHP);
IGeometryCollection gc = sfr.ReadAll();
using (ShapefileDataReader datosDBFA = new ShapefileDataReader(archivoSHP, gcA.Factory))
{
    dataDBF.Reset();
    IEnumerator enum = dataDBF.GetEnumerator();
    while (enum.MoveNext()){
    ...

    }
    if (!dataDBF.IsClosed)
        dataDBF.Close();
}

Я должен использовать ShapefileDataReader внутри использования. И позже вы можете удалить все файлы.

0 ответов

Другие вопросы по тегам