String R中日期对象的as.character的一致输出

String R中日期对象的as.character的一致输出,string,r,date,format,overwrite,String,R,Date,Format,Overwrite,外部R库使用as.character函数将不同类的对象转换为字符串。除了我的日期对象(类“POSIXlt”和“POSIXt”)之外,这一切都很好:通常输出类似于“2010-11-04 10:43:00”(这很完美),但每次时间是00:00:00(午夜),时间组件都会被忽略,只有日期组件显示为“2010-11-04”。但为了进一步处理,我需要一个一致的输出格式。因此,在任何情况下都应显示时间分量 我不能简单地使用format函数,因为外部库执行调用。所以我认为覆盖类“POSIXlt”和“POSIX

外部R库使用as.character函数将不同类的对象转换为字符串。除了我的日期对象(类“POSIXlt”和“POSIXt”)之外,这一切都很好:通常输出类似于“2010-11-04 10:43:00”(这很完美),但每次时间是00:00:00(午夜),时间组件都会被忽略,只有日期组件显示为“2010-11-04”。但为了进一步处理,我需要一个一致的输出格式。因此,在任何情况下都应显示时间分量


我不能简单地使用format函数,因为外部库执行调用。所以我认为覆盖类“POSIXlt”和“POSIXt”的as.character函数可能是一个解决方案,但我不知道如何解决。欢迎其他想法:)

您只需创建自己的对象,就可以覆盖
POSIXct
对象的
as.character
方法

as.character.POSIXct <- function(x, format="%Y-%m-%d %H:%M:%S", ...)
format(x, format=format, ...)
as.character.POSIXct