Shapefile'ı CSV'ye dönüştürme
Bu dönüştürücü bir shapefile'ın öznitelik tablosunu Excel veya Google E-Tablolar için CSV'ye aktarır; noktalara X ve Y sütunları, çizgi ve poligonlara bir WKT sütunu ekler. Shapefile tarayıcınızda işlenir, sunucuya gönderilmez. EPSG:4326'yı seçmediğiniz sürece koordinatlar shapefile'ın kendi sisteminde kalır, CSV bu sistemi kaydetmez ve alan adları 10 karakterde kalır.
Bir dosya doğru dönüştürülmedi mi? Tercihen küçük bir örnek dosyayla birlikte [email protected] adresine e-posta gönderin, sorun düzeltilecektir.
Temel bilgiler
- Girdi: Shapefile (.shp). Çıktı: CSV (.csv).
- Dosyalarınız sunucuya gönderilmez: işlem tarayıcınızda, kendi cihazınızda yapılır.
- Dosya boyutu: sabit bir sınır yok; çok büyük dosyalar cihazınızın belleğiyle sınırlıdır.
- Bilgisayar, tablet veya telefonda güncel bir tarayıcı (Chrome, Edge, Firefox veya Safari) gerekir; hiçbir şey kurmanız gerekmez.
- Ücretsizdir, kayıt gerekmez.
Tek bir koordinat çiftini başka bir koordinat sistemine mi dönüştürmeniz gerekiyor? Kardeş sitemiz GeoDrafter'daki koordinat dönüştürücüyü kullanın (İngilizce).
Shapefile → CSV: neden dönüştürmelisiniz
Bir shapefile'ın öznitelik tablosu .dbf dosyasında durur ve Excel ile Google E-Tablolar bu dosyayı artık düzgün açmıyor. CSV'ye dönüştürmek, bu tabloyu her elektronik tablonun, veritabanının ve betiğin okuyabileceği bir biçimde, her obje için bir satır olacak şekilde size verir. Nokta shapefile'ları koordinatları içeren X ve Y sütunları alır, böylece konumlar kullanılabilir kalır; çizgi ve poligonların geometrisi ise WKT metni olarak yazılır. Shapefile'ın kendi koordinat sistemini, örneğin bir UTM dilimindeki veya TUREF / TM30'daki metre değerlerini koruyabilir ya da koordinatları dönüştürme sırasında boylam ve enleme çevirebilirsiniz. Shapefile'ı bir .zip olarak veya ayrı dosyalar halinde seçin; birden fazla shapefile her biri için bir CSV verir. Her şey tarayıcınızda GDAL ile çalışır.
Shapefile dosyası CSV biçimine nasıl dönüştürülür
- Shapefile'ınızı içeren bir .zip bırakın veya .shp, .shx, .dbf ve .prj dosyalarını birlikte seçin.
- CSV biçimini seçin; boylam ve enlem istiyorsanız EPSG:4326 girin.
- “CSV biçimine dönüştür” düğmesine tıklayın ve dosyayı Excel'de veya veritabanınızda açın.
Dönüştürme sırasında neler değişir
Koordinatlar shapefile'ın sistemindedir
Varsayılan olarak X ve Y, .prj dosyasındaki koordinat sisteminde yazılır; yani TUREF / TM30 (EPSG:5254) sistemindeki bir shapefile, 414057.51 ve 4541986.71 gibi metre cinsinden sağa ve yukarı değerleri verir. GPS'teki gibi boylam ve enlem için çıktı koordinat sistemi olarak EPSG:4326 girin. Bir CSV sistemin kendisini saklayamaz; dönüştürmeden sonraki mesaj, sayıların hangi sistemde olduğunu size söyler.
WKT olarak çizgiler ve poligonlar
Bir yol veya bir parsel iki sütuna sığdırılamaz; bu yüzden çizgi ve poligon shapefile'ları, geometrinin tamamını POLYGON ((...)) gibi metin olarak tutan WKT adlı bir ilk sütun alır. Excel bunu uzun metin olarak gösterir ve hücreleri 32.767 karakterde keser; CBS programları ve veritabanları ise bu sütunu yeniden geometri olarak okuyabilir.
Kısa alan adları kısa kalır
Shapefile alan adları en fazla 10 karakterdir; bu yüzden CSV başlığında DESCRIPTIO veya POP_2020 gibi aynı kısaltılmış adlar yer alır. Tablo, veriyi tanımayan okuyucular içinse adları elektronik tabloda yeniden adlandırın. .dbf'deki tarihler 2024-05-01 biçiminde yazılır.
Özel karakterler
Metin, .cpg dosyasındaki kodlamayla okunur; bu dosya yoksa geçerli UTF-8 metin UTF-8 olarak, diğer metinler .dbf başlığındaki koda göre ya da Windows-1252 olarak okunur. Çıktı UTF-8 olarak yazılır. Excel'in ç, ö, ş veya ü gibi harfleri doğru göstermesi için Excel biçimlerinden birini seçin; noktalı virgüllü biçim, Türkiye gibi ondalık virgül kullanan ülkelerdeki Excel'e uygundur.
Aynı anda birden fazla shapefile
Birden fazla shapefile içeren bir .zip, her biri için shapefile'ın adını taşıyan bir CSV'nin bulunduğu bir zip verir. Shapefile'ın yanındaki mekânsal indeks, meta veri ve stil dosyaları yok sayılır.
Dosya biçimleri hakkında
Shapefile
Esri Shapefile, en yaygın kullanılan GIS vektör biçimidir. Tek bir “shapefile” aslında aynı adı taşıyan bir dosya grubudur: .shp geometriyi, .shx bir dizini, .dbf öznitelik tablosunu, isteğe bağlı .prj koordinat sistemini ve .cpg metin kodlamasını tutar.
- En az .shp, .shx ve .dbf dosyaları gerekir. Bunları birlikte veya tek bir .zip olarak seçin.
- Alan adları 10 karakterle, metin değerleri 254 karakterle sınırlıdır.
- Her shapefile yalnızca tek bir geometri türü içerir: noktalar, çizgiler veya poligonlar.
- .prj dosyası olmadan koordinat sistemi bilinmez.
CSV
CSV (comma-separated values, virgülle ayrılmış değerler), Excel'de, Google E-Tablolar'da ve her veritabanında açılan düz metin bir tablodur. Kendine ait bir geometri türü yoktur: konumlar ya enlem ve boylam gibi iki koordinat sütunu olarak ya da WKT metni içeren bir sütun olarak saklanır.
- Noktalar iki sütuna sığar (X ve Y ya da boylam ve enlem); çizgiler ve poligonlar için bir WKT sütunu gerekir.
- Koordinat sistemi dosyada saklanmaz, bu yüzden ayrıca not edin.
- Ayırıcı için bir standart yoktur: Excel, dil ayarlarına bağlı olarak virgül veya noktalı virgül kullanır.
- Her değer metindir; 0800'ün bir sayı mı yoksa posta kodu mu olduğuna dosyayı okuyan program karar verir.
Sıkça sorulan sorular
Shapefile'ım bir sunucuya yükleniyor mu?
Hayır. Dosyalar kendi bilgisayarınızda tarayıcınız tarafından okunur ve dönüştürülür; hiçbir şey sunucuya gönderilmez.
Yalnızca .dbf dosyasını Excel'de açabilir miyim?
Excel'in güncel sürümleri artık .dbf dosyası kaydetmiyor ve böyle bir dosyayı doğrudan açmak özel karakterleri ve tarihleri bozabiliyor. CSV bu sorunların önüne geçer.
Tabloyu koordinatlar olmadan nasıl alırım?
Her zamanki gibi dönüştürün ve elektronik tablonuzda X ile Y ya da WKT sütununu silin. Öznitelik sütunları her iki durumda da aynıdır.
CSV'yi yeniden shapefile'a çevirebilir miyim?
X ve Y sütunları olan bir CSV, QGIS'te “Delimited Text” katmanı olarak eklenip shapefile olarak kaydedilebilir. CSV koordinat sistemini kaydetmediği için, elinizde hâlâ varsa özgün shapefile'ı kullanın.