موقعیت‌های مختلفی وجود دارد که داشتن داده‌ها در قالب Shapfile یا GeoJSON می‌تواند مفید باشد. اگر Shapefile دارید که می‌خواهید آن را به GeoJSON یا بالعکس تبدیل کنید، می‌توانید به راحتی با برنامه‌نویسی C# به آن دست پیدا کنید. در این مقاله یاد خواهید گرفت که چگونه این کار را انجام دهید.

C# API برای تبدیل Shapefile به GeoJSON و بالعکس

Aspose.GIS for .NET API به شما امکان می دهد نقشه ها را رندر کنید و داده های جغرافیایی را بدون نرم افزار اضافی ایجاد کنید، بخوانید و تبدیل کنید. علاوه بر این، API به شما امکان می دهد Shapefile را به GeoJSON و بالعکس تبدیل کنید. می‌توانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش دانلودها دانلود کنید.

PM> Install-Package Aspose.GIS

تبدیل Shapefile به GeoJSON در سی شارپ

مرحله زیر برای تبدیل Shapefile به GeoJSON است.

کد نمونه زیر نحوه تبدیل Shapefile به GeoJSON را با استفاده از C# نشان می دهد.

string shapefilePath = dataDir + "InputShapeFile.shp";
string jsonPath = dataDir + "output_out.json";

VectorLayer.Convert(shapefilePath, Drivers.Shapefile, jsonPath, Drivers.GeoJson);

تبدیل GeoJSON به Shapefile در سی شارپ

مانند تبدیل Shapefile به GeoJSON، فایل های GeoJSON را می توان تنها با یک خط کد به Shapefile تبدیل کرد. مرحله زیر برای تبدیل GeoJSON به Shapefile است.

کد نمونه زیر نحوه تبدیل GeoJSON به Shapefile را با استفاده از C# نشان می دهد.

string jsonPath = dataDir + "output_out.json";
string outShapefilePath = dataDir + "OutputShapeFile_out.shp";

VectorLayer.Convert(jsonPath, Drivers.GeoJson, outShapefilePath, Drivers.Shapefile);

مجوز رایگان دریافت کنید

برای امتحان API بدون محدودیت ارزیابی، می توانید [یک مجوز موقت رایگان] را دریافت کنید.

نتیجه

در این مقاله نحوه تبدیل Shapefile به GeoJSON و بالعکس با استفاده از سی شارپ را یاد گرفتید. تکه کدهای به اشتراک گذاشته شده نشان می دهد که چگونه می توان تنها با یک خط کد به این تبدیل ها دست یافت. Aspose.GIS for .NET یک API قدرتمند و غنی است که به شما در کار با داده های مکانی کمک می کند. با مراجعه به مستندات رسمی می‌توانید API را با جزئیات بررسی کنید. در صورت وجود هرگونه سوال، لطفاً با ما در [تالار گفتمان پشتیبانی رایگان10 تماس بگیرید.

همچنین ببینید