Почему я не могу удалить шейп-файл?
Я использую библиотеку 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 внутри использования. И позже вы можете удалить все файлы.