我一直在网上淘试图找到一个Python的(SP?)的方式来处理这些数据..如何使用Python把一个.dbf成shape文件
我们每天都将收到数据的加载以.dbf格式(希望) - 然后我们需要将这些数据保存为shape文件。
有没有人有任何关于我的过程的链接或任何建议?
我一直在网上淘试图找到一个Python的(SP?)的方式来处理这些数据..如何使用Python把一个.dbf成shape文件
我们每天都将收到数据的加载以.dbf格式(希望) - 然后我们需要将这些数据保存为shape文件。
有没有人有任何关于我的过程的链接或任何建议?
它一直在模型生成器!
# (generated by ArcGIS/ModelBuilder)
# Usage: DBF2SHAPEFILE <XY_Table> <Y_Field> <X_Field> <Output_Feature_Class>
# ---------------------------------------------------------------------------
# Import system modules
import sys, string, os, arcgisscripting, datetime
# Adds the creation date to all of the previous shapefiles in that folder
filename = 'D:/test.txt'
fileinfo = os.stat(filename)
creation_date = datetime.date.fromtimestamp(fileinfo.st_ctime)
os.rename(filename, filename + '-' + creation_date.strftime('%Y-%m-%d'))
# Create the Geoprocessor object
gp = arcgisscripting.create()
# Load required toolboxes...
gp.AddToolbox("C:/Program Files/ArcGIS/ArcToolbox/Toolboxes/Data Management Tools.tbx")
# Script arguments...
XY_Table = sys.argv[1]
Y_Field = sys.argv[2]
X_Field = sys.argv[3]
Output_Feature_Class = sys.argv[4]
# Local variables...
Layer_Name_or_Table_View = ""
# Process: Make XY Event Layer...
gp.MakeXYEventLayer_management(XY_Table, X_Field, Y_Field, Layer_Name_or_Table_View, "")
# Process: Copy Features...
gp.CopyFeatures_management(Layer_Name_or_Table_View, Output_Feature_Class, "", "0", "0", "0")
关闭我的头顶:
import os
import datetime
myfile = "test.txt"
creationdate = os.stat(myfile).st_ctime
timestamp = datetime.datetime.fromtimestamp(creationdate)
datestr = datetime.datetime.strftime(timestamp, "%Y%m%d")
os.rename(myfile, os.path.splitext(myfile)[0] + datestr + os.path.splitext(myfile)[1])
重命名test.txt
到test20110221.txt
。
要将文件的creation_date追加到名称,需要使用os.stat()获取创建日期,然后使用os.rename()重命名该文件。您可以使用date.strftime()格式化日期字符串。
import datetime, os
filename = 'original.ext'
fileinfo = os.stat(filename)
creation_date = datetime.date.fromtimestamp(fileinfo.st_ctime)
os.rename(filename, filename + '-' + creation_date.strftime('%Y-%m-%d'))
如果你想做到这一点,而不使用ArcGIS中,你可以使用OGR的Python绑定或ogr2ogr utility通过一个子进程。你可以通过一个windows批处理文件来使用该实用程序,如果你有很多事情要比每个文件都要调用arc进程要快得多...
如你所知,这不是改变扩展的问题,有一个特定的格式要求。
不知道这是否准确,但:“发布的地图不包含实际的地理数据,而是链接到中央远程位置的数据集,这些位置可能由ArcMap服务器托管或通过Internet提供。” (http://www.fileinfo.com/extension/pmf)所以它可能不是您实际需要更新的pmf文件。 – 2011-02-18 12:46:56
太托马斯!感谢您指出这一点! – 2011-02-21 07:31:44
我已经编辑了我的帖子,现在是我的定义问题! – 2011-02-21 09:03:43