转换时间字段 (数据管理)

摘要

将存储在一个字段中的日期和时间值传输到另一个字段。 该工具可用于在不同的字段类型(文本、数字或日期字段)之间进行转换,或将值转换为不同的格式,例如从 dd/MM/yy HH:mm:ss 转换为 yyyy-MM-dd。

使用情况

参数

标注说明数据类型
输入表

包含要转换的时间值的字段的图层或表。

Table View
输入时间字段

含有时间值的字段。 该字段可以是短型、长型、浮点型、双精度型、文本型或日期型。

Field
输入时间格式
(可选)

输入时间字段参数值中时间值的格式。 可从下拉列表中选择标准时间格式,也可以指定自定义格式。 当输入时间字段为日期类型时,不支持该参数。

注:

格式字符串区分大小写。

  • 如果时间字段的数据类型为日期,则不需要时间格式。
  • 如果时间字段的数据类型是数值(短整型、长整型、浮点型或双精度),将在下拉列表中提供标准数值时间格式。
  • 如果时间字段的数据类型是字符串,将在下拉列表中提供标准字符串时间格式。 对于字符串字段来说,您也可以为其指定自定义时间格式。 例如,可采用标准格式将时间值存储在字符串字段中,如 yyyy/MM/dd HH:mm:ss 或以自定义格式存储,如 dd/MM/yyyy HH:mm:ss。 如果使用自定义格式,您还可以指定 a.m. 或 p.m. 指示符。 以下列出了部分常用格式:
    • yyyy - 年,以四位数表示
    • MM - 数字形式的月份,个位数月份有前导零
    • MMM - 以三个字母的缩略形式显示的月
    • dd - 数字形式的日期,个位数日期有前导零
    • ddd - 以三个字母的缩略形式显示的星期
    • hh - 小时,且个位数小时具有前导零;12 小时制
    • HH - 小时,且个位数小时具有前导零;24 小时制
    • mm - 分钟,且单位数分钟有前导零
    • ss - 秒,且单位数秒有前导零
    • t - 单字符时间标记字符串,例如,A 或 P
    • tt - 多字符时间标记字符串,例如,AM 或 PM
    • unix_us - Unix 时间,以微秒为单位
    • unix_ms - Unix 时间,以毫秒为单位
    • unix_s - Unix 时间,以秒为单位
    • unix_hex - 以十六进制表示的 Unix 时间

String
输出时间字段名称

要添加的字段的名称,其将用于存储转换后的时间值。

String
输出时间字段类型
(可选)

指定输出时间字段的字段类型。

  • 日期字段类型将为日期型。 日期字段支持日期和时间值。
  • 文本字段类型将为文本型。 文本字段支持字符串。
  • 长整型(32 位整数)字段类型将为长整型。 长整型字段支持介于 2,147,483,648 和 2,147,483,647 之间的整数。
  • 短整型(16 位整型)字段类型将为短整型。 短整形字段支持介于 -32,768 和 32,767 之间的整数。
  • 双精度型(64 位浮点型)字段类型将为双精度型。 双精度字段支持介于 -2.2E308 和 1.8E308 之间的小数。
  • 浮点型(32 位浮点型)字段类型将为浮点型。 浮点型字段支持介于 -3.4E38 和 1.2E38 之间的小数。
String
输出时间格式
(可选)

输出时间值的格式。 支持的输出时间格式取决于输出时间字段类型参数值。 自定义格式还可用于将值转换为不同的格式或提取值的一部分(例如年份)。 有关自定义格式的列表,请参阅输入时间格式参数帮助。 当输出时间字段类型参数值为日期时,不使用此参数。

注:

如果输出时间字段的数据类型长度不足以存储转换的时间值,将会截断输出值。

String

派生输出

标注说明数据类型
更新的输入表

已更新的输入表。

Table View

arcpy.management.ConvertTimeField(in_table, input_time_field, {input_time_format}, output_time_field, {output_time_type}, {output_time_format})
名称说明数据类型
in_table

包含要转换的时间值的字段的图层或表。

Table View
input_time_field

含有时间值的字段。 该字段可以是短型、长型、浮点型、双精度型、文本型或日期型。

Field
input_time_format
(可选)

input_time_field 参数值中时间值的格式。 当输入时间字段为日期类型时,不支持该参数。

注:

格式字符串区分大小写。

  • 如果时间字段的数据类型为日期,则不需要时间格式。
  • 如果时间字段的数据类型是数值(短整型、长整型、浮点型或双精度),将在下拉列表中提供标准数值时间格式。
  • 如果时间字段的数据类型是字符串,将在下拉列表中提供标准字符串时间格式。 对于字符串字段来说,您也可以为其指定自定义时间格式。 例如,可采用标准格式将时间值存储在字符串字段中,如 yyyy/MM/dd HH:mm:ss 或以自定义格式存储,如 dd/MM/yyyy HH:mm:ss。 如果使用自定义格式,您还可以指定 a.m. 或 p.m. 指示符。 以下列出了部分常用格式:
    • yyyy - 年,以四位数表示
    • MM - 数字形式的月份,个位数月份有前导零
    • MMM - 以三个字母的缩略形式显示的月
    • dd - 数字形式的日期,个位数日期有前导零
    • ddd - 以三个字母的缩略形式显示的星期
    • hh - 小时,且个位数小时具有前导零;12 小时制
    • HH - 小时,且个位数小时具有前导零;24 小时制
    • mm - 分钟,且单位数分钟有前导零
    • ss - 秒,且单位数秒有前导零
    • t - 单字符时间标记字符串,例如,A 或 P
    • tt - 多字符时间标记字符串,例如,AM 或 PM
    • unix_us - Unix 时间,以微秒为单位
    • unix_ms - Unix 时间,以毫秒为单位
    • unix_s - Unix 时间,以秒为单位
    • unix_hex - 以十六进制表示的 Unix 时间

String
output_time_field

要添加的字段的名称,其将用于存储转换后的时间值。

String
output_time_type
(可选)

指定输出时间字段的字段类型。

  • DATE字段类型将为日期型。 日期字段支持日期和时间值。
  • TEXT字段类型将为文本型。 文本字段支持字符串。
  • LONG字段类型将为长整型。 长整型字段支持介于 2,147,483,648 和 2,147,483,647 之间的整数。
  • SHORT字段类型将为短整型。 短整形字段支持介于 -32,768 和 32,767 之间的整数。
  • DOUBLE字段类型将为双精度型。 双精度字段支持介于 -2.2E308 和 1.8E308 之间的小数。
  • FLOAT字段类型将为浮点型。 浮点型字段支持介于 -3.4E38 和 1.2E38 之间的小数。
String
output_time_format
(可选)

输出时间值的格式。 支持的输出时间格式取决于 output_time_type 参数值。 自定义格式还可用于将值转换为不同的格式或提取值的一部分(例如年份)。 有关自定义格式的列表,请参阅 input_time_format 参数帮助。 当 output_time_type 参数值为 DATE 时,不使用此参数。

注:

如果输出时间字段的数据类型长度不足以存储转换的时间值,将会截断输出值。

String

派生输出

名称说明数据类型
out_table

已更新的输入表。

Table View

代码示例

ConvertTimeField 示例 1 (Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 ConvertTimeField 函数。

import arcpy
arcpy.ConvertTimeField_management("C:/Data/TemporalData.gdb/Input_Table","Input_Time","1033;MMMM dd, yyyy HH:mm:ss;AM;PM","Output_Time")
ConvertTimeField 示例 2 (独立脚本)

以下独立脚本演示了如何使用 ConvertTimeField 函数。

# Name: ConvertTimeField_Ex02.py
# Description: Convert a time field to date field
# Requirements: None

# Import system modules
import arcpy

# Set local variables
inTable = "C:\Data\TemporalData.gdb\Input_Table"
inputTimeField = "Input_Time"
inputTimeFormat = "1033;MMMM dd, yyyy HH:mm:ss;AM;PM"
outputDateField = "Output_Time"

# Execute CalculateEndDate
arcpy.ConvertTimeField_management(inTable, inputTimeField, inputTimeFormat, outputDateField)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题