জিডিএল / ওজিআর ব্যবহার করে শেফিলের ক্ষেত্রের মানটি কীভাবে পরিবর্তন করবেন?


18

আমি একটি শেফফিলের ক্ষেত্রের মান পরিবর্তন করার চেষ্টা করছি। তবে এটি মান পরিবর্তন করে না। আমার কোডে কী ভুল?

import ogr

driver = ogr.GetDriverByName('ESRI Shapefile')
fn = 'dist.shp'
dataSource = driver.Open(fn, 0)

layer = dataSource.GetLayer()
feature = layer.GetNextFeature()

dist = 233

while feature:
    feature.SetField("dist", dist)
    layer.SetFeature(feature)
    feature = layer.GetNextFeature()

dataSource.Destroy()

উত্তর:


23

ওপেনে দ্বিতীয় যুক্তিটি ডেটা আপডেট করা (লিখিত) করা যায় কিনা তা উল্লেখ করে। চেষ্টা করুন:

ডাটাসোর্স = ড্রাইভার.অপেন (fn, 1)


এই সমাধান কাজ! জিডিএল-পাইথন এপিআই থেকে নিশ্চিত করা হয়েছে । ডিফল্ট বিকল্পটি 0 যেমন মিথ্যা, অন্যথায় সত্যের ক্ষেত্রে আপডেটের জন্য 1 টি প্রয়োজন
এরিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.