GDAL書籍中刪除數據勘誤(C#語言)

GDAL書籍中關於C#版本刪除數據的時候,不能完全刪除數據,由於我對C#不瞭解導致代碼有點問題,非常感謝@Bingoyin指出並給出修改方案。此外對於柵格圖像的刪除、重命名,矢量數據的刪除和重命名都有同樣的問題,修改方式也都一樣,具體如下。

以柵格數據爲例,具體修改爲:

        static void RasterDelete(string strFile)
        {
            // 註冊柵格驅動
            Gdal.AllRegister();

            Driver oDriver = null;
            {//此處需要修改
                //打開圖像
                Dataset oDS = Gdal.Open(strFile, Access.GA_Update);
                if (oDS == null)
                {
                    File.Delete(strFile);
                    return;
                }

                oDriver = oDS.GetDriver();
                if (oDriver == null)
                {
                    File.Delete(strFile);
                    return;
                }
            }

            if (oDriver.Delete(strFile) == GdalConst.CE_None)
                return;
            else
                File.Delete(strFile);
        }

修改爲:

        static void RasterDelete(string strFile)
        {
            // 註冊柵格驅動
            Gdal.AllRegister();

            Driver oDriver = null;
            //打開圖像
            using(Dataset oDS = Gdal.Open(strFile, Access.GA_Update))
            {
                if (oDS == null)
                {
                    File.Delete(strFile);
                    return;
                }

                oDriver = oDS.GetDriver();
                if (oDriver == null)
                {
                    File.Delete(strFile);
                    return;
                }
            }

            if (oDriver.Delete(strFile) == GdalConst.CE_None)
                return;
            else
                File.Delete(strFile);
        }

最後感謝各位的支持,如果有任何疑問,請聯繫我,謝謝。

EMail:[email protected]

QQ :[email protected]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章