c++ 当前时间和日期获取

c++ 当前时间和日期获取,第1张

3.与日期和时间相关的数据结构

在标准C/C++中,我们可通过tm结构来获得日期和时间,tm结构在timeh中的定义如下:

#ifndef _TM_DEFINED

struct tm {

int tm_sec; / 秒 – 取值区间为[0,59] /

int tm_min; / 分 - 取值区间为[0,59] /

int tm_hour; / 时 - 取值区间为[0,23] /

int tm_mday; / 一个月中的日期 - 取值区间为[1,31] /

int tm_mon; / 月份(从一月开始,0代表一月) - 取值区间为[0,11] /

int tm_year; / 年份,其值等于实际年份减去1900 /

int tm_wday; / 星期 – 取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推 /

int tm_yday; / 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 /

int tm_isdst; / 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。/

};

#define _TM_DEFINED

#endif

ANSI C标准称使用tm结构的这种时间表示为分解时间(broken-down time)。

而日历时间(Calendar Time)是通过time_t数据类型来表示的,用time_t表示的时间(日历时间)是从一个时间点(例如:1970年1月1日0时0分0秒)到此时的秒数。在timeh中,我们也可以看到time_t是一个长整型数:

#ifndef _TIME_T_DEFINED

typedef long time_t; / 时间值 /

#define _TIME_T_DEFINED / 避免重复定义 time_t /

#endif

大家可能会产生疑问:既然time_t实际上是长整型,到未来的某一天,从一个时间点(一般是1970年1月1日0时0分0秒)到那时的秒数(即日历时间)超出了长整形所能表示的数的范围怎么办?对time_t数据类型的值来说,它所表示的时间不能晚于2038年1月18日19时14分07秒。为了能够表示更久远的时间,一些编译器厂商引入了64位甚至更长的整形数来保存日历时间。比如微软在Visual C++中采用了__time64_t数据类型来保存日历时间,并通过_time64()函数来获得日历时间(而不是通过使用32位字的time()函数),这样就可以通过该数据类型保存3001年1月1日0时0分0秒(不包括该时间点)之前的时间。

在timeh头文件中,我们还可以看到一些函数,它们都是以time_t为参数类型或返回值类型的函数:

double difftime(time_t time1, time_t time0);

time_t mktime(struct tm timeptr);

time_t time(time_t timer);

char asctime(const struct tm timeptr);

char ctime(const time_t timer);

此外,timeh还提供了两种不同的函数将日历时间(一个用time_t表示的整数)转换为我们平时看到的把年月日时分秒分开显示的时间格式tm:

struct tm gmtime(const time_t timer);

struct tm localtime(const time_t timer);

通过查阅MSDN,我们可以知道Microsoft C/C++ 70中时间点的值(time_t对象的值)是从1899年12月31日0时0分0秒到该时间点所经过的秒数,而其它各种版本的Microsoft C/C++和所有不同版本的Visual C++都是计算的从1970年1月1日0时0分0秒到该时间点所经过的秒数。

4.与日期和时间相关的函数及应用

在本节,我将向大家展示怎样利用timeh中声明的函数对时间进行 *** 作。这些 *** 作包括取当前时间、计算时间间隔、以不同的形式显示时间等内容。

41 获得日历时间

我们可以通过time()函数来获得日历时间(Calendar Time),其原型为:

time_t time(time_t timer);

如果你已经声明了参数timer,你可以从参数timer返回现在的日历时间,同时也可以通过返回值返回现在的日历时间,即从一个时间点(例如:1970年1月1日0时0分0秒)到现在此时的秒数。如果参数为空(NUL),函数将只通过返回值返回现在的日历时间,比如下面这个例子用来显示当前的日历时间:

#include "timeh"

#include "stdioh"

int main(void)

{

struct tm ptr;

time_t lt;

lt =time(NUL);

printf("The Calendar Time now is %d\n",lt);

return 0;

}

运行的结果与当时的时间有关,我当时运行的结果是:

The Calendar Time now is 1122707619

其中1122707619就是我运行程序时的日历时间。即从1970年1月1日0时0分0秒到此时的秒数。

42 获得日期和时间

这里说的日期和时间就是我们平时所说的年、月、日、时、分、秒等信息。从第2节我们已经知道这些信息都保存在一个名为tm的结构体中,那么如何将一个日历时间保存为一个tm结构的对象呢?

其中可以使用的函数是gmtime()和localtime(),这两个函数的原型为:

struct tm gmtime(const time_t timer);

struct tm localtime(const time_t timer);

其中gmtime()函数是将日历时间转化为世界标准时间(即格林尼治时间),并返回一个tm结构体来保存这个时间,而localtime()函数是将日历时间转化为本地时间。比如现在用gmtime()函数获得的世界标准时间是2005年7月30日7点18分20秒,那么我用localtime()函数在中国地区获得的本地时间会比世界标准时间晚8个小时,即2005年7月30日15点18分20秒。下面是个例子:

#include "timeh"

#include "stdioh"

int main(void)

{

struct tm local;

time_t t;

t=time(NUL);

local=localtime(&t);

printf("Local hour is: %d\n",local->tm_hour);

local=gmtime(&t);

printf("UTC hour is: %d\n",local->tm_hour);

return 0;

}

运行结果是:

Local hour is: 15

UTC hour is: 7

首先我复制粘贴的,还有就是算法复杂,如果你的心算能力强就会更快些!

阳历日期推算阴历日期的方法:

阴历日期是以月亮的圆缺为计月单位,其以逢朔为初一,以月望为十五(大月为十六日),以月晦为二十九日(大月为三十日)。然而目前记时通常用阳历日期表达,如欲将阳历日期换算成阴历日期可以用以下两种方法:

其一是查《新编万年历》,如查1984年6月8日是阴历几日?翻开万年历6月10日是阴历十一,则逆推6月8日是阴历初九。

其二可以利用公式推算阴历日期:

设:公元年数-1977(或1901)=4Q+R

则:阴历日期=14Q+106(R+1)+年内日期序数-295n

(注:式中Q、R、n均为自然数,R<4)

例:1994年5月7日的阴历日期为:

1994-1977=17=4×4+1

故:Q=4,R=1

则:5月7日的阴历日期为:

14×4+106(1+1)+(31+28+31+31+7)-295n

=2042- 295n

然后用295去除2042得商数6272,6即是n值,余数27即是阴历二十七日。

一、 推算年干支口诀

掌上推算年干支,支子花甲起根源。

阳支都是旬开始,天干为甲尾四年。

隔位逆推十年正,顺推年尾五零三。

逐支加减六十数,掌上推算千万年。

推算方法:“掌上推算年干支,支子花甲起根源。”此法是将地支排列在掌中,手掌上推算年干支的方法。 首先,在掌上将地支定位(图一),然后以地支子位为花甲子的开始,可定为1864,1924,也可定为1984年,其年都是甲子年。“阳支都是旬开始,天干为甲尾四年。”地支中的子,寅,辰,午,申,戌都是阳支,而且也是每旬的开始,天干都为甲,即甲子,甲戌,甲申,甲午,甲辰,甲寅,这些年的公历尾数均为四。“隔位逆推十年正,顺推年尾五零三。”天干十数,地支十二数,天干与地支组合天干每循环一次,地支总与下二支(旬空)。其中余下的第一支便是下旬的开始。我们从地支子位开始,隔一位逆推,即从子位逆推隔亥到戌,恰是甲戌旬的开始,再逆推隔一位酉至申为甲申旬开始,------年尾数都为四,年间隔都是十年。在确定旬开始以后,以该年尾数四为起点,从下支开始挨位顺推,其公历年尾数分别是5,6,8,9,0,1,2,3,而后又是下旬的开始。“逐支加减六十数,掌上推算千万年”掌握此法推算,如果将甲子年定为1984年,按口诀可知1994年为甲戌,2004年为甲申,2014年为甲午等。确定每旬开始的公历年数后,可根据需要顺推任何一年的干支,虽意性很大,可推千年万年的干支。

二、推算月、时干支口诀

天干五合前为主,月时干序一至五。

年干隔数配寅月,日干配时本数身。

古往今来,年上起月,日上起时,是按天干五合的方法,分成五种情况,即甲、己之年(日)定月(时)的方法相同------。我们也采用这种方法,并一前一天干为主,即甲、己以甲为主,乙、庚以乙为主,------,配上序数甲为1,乙为2,丙为3,丁为4,戊为5(图二),成为推算月、时的固定序数。“年干隔位配寅月”,推算某年的月干,先看该年干与何干相合,然后按“天干五合前为主”的方法,查出该干的序数,并设此干为零,按序数隔干确定寅月的天干。如98年是戊寅,戊癸干合,戊年与癸年的天干相同,属于同一种定寅月天干法。五的序数尾5 ,从5 开始,隔己、庚、辛、壬、癸五天干到甲,就可以算出98年寅月的天干是甲,其他月的天干就好推算了。“日干配时本身数” ,此句推算方法与年干定寅月天干发基本相同,只是在确定日干合干以后,从合之干的前干本身算起,按序数查,到何干,便是该日子时的天干。如己日,己与甲同一类型,以甲干为主,甲的序数为“1”以本身配子时,该日子时的天干为甲,即甲子时。同样,癸日子时吧的天干,因戊癸合干,以五为主,序数为5,从5开始数到壬,癸日子时为壬子时。

二、 农历大小月卦口诀

一年上下两卦编,一七两月初爻安。

阴大阳小编上卦,遇有闰月年十三。

闰爻相邻爻间伏,确定年月按节算。

推算方法:此诀是为了掌握某年农历大小月的排列顺序和有否闰月而编的。“一年上下两卦编,一、七两月初爻安” ,在 正常情况下,农历每年为十二个月。我们可以将一至六月编为前卦,七至十二月编为后卦,几一年编为两卦,并以一月为前卦的处爻,七月为后卦的初爻。“阴大阳小编上卦,遇有闰月年十三”,我们将大月规定用用阴爻表示,小月用阳爻表示,按大小顺序用阴阳爻将一年编为两卦。遇到有闰月的年份就多出一个月,一年为十三个月。“闰年相邻爻间伏,确定年月按节算”。在出现有闰月的年份时,按闰月大小用阴阳爻表现出来,并标在 闰月的前后两月的爻位中间的左侧,如同伏卦一样,一看便知到闰几月,是大月还是小月。同时,提醒您农历年、的确定,不是按万年历编出的月份确定的,而是按节气确定的。如1998年,按上述方法可编成《井》和《坎》两卦,而今年闰5月为小月,上半年月卦符号为“: 。 : 。 。 : ”,下半年的月卦符号为“ = 丨 = = 丨 = ”,上半年卦第5、6爻间伏一阳爻,可知今年润五月为29天。

四、推算日干支口诀

推算日干支,可以按公历和农历两种方法推算。

⑴ 农历日干支推算口诀:

大小月卦记心间,正一干支起根源。

大后干同地支冲,小后干支退一天。

初一十三二十五,支同隔干一位算。

推算方法:“大小月卦记心间,正一干支起根源。”农历的大月为30天小月为29天,固定不变。要推农历曰干支,先要按《农历大小月卦口诀》将推算之年编上两卦,以便在推算日千支时运。除此之外,还要记住农历正月初一日的干支,因为它是推算一年逐日的基础。“大后干同地支冲,小后干支退一天。”农历天干与地支组合,天干循环25次。根据这一规律,知道某月初一日干支,如果这个月是小月则应在干同支冲的情况下,干支各减一位,则是小月后下月初一日干支。如本月初一干支为己卯,这个月是大月,下月初一干支为己酉。如果这个月是小月,则下月初一干支应在己酉退一位后确定,即为戊申日。“初一十三二十五,支同干隔一位算。”此两句是在确定某月初一干支后,将这个月分成三个阶段,即初一至十二,十三至二十四二十五以后。初一、十三、二十五日在干支上也是有规律的。知道初一干支,只要将该日天干隔一位顺推,而地支不变。同理,知道十三日干支,支同干隔一位,也知道二十五日的干支。如初一日干支为甲子,则十三日干支为丙子,二十五日干支为戊子。掌握这个方法,就可以根据所推之日属于哪一段,便可以很快知道这天的干支了。

⑵公历日干支推算口诀:

元旦干支为根源,大小二月记心间。

小月干同地支冲,大月上句加一天。

申子辰年年为闰,干同支冲退一天。

余年二月二十八,干同支冲退一天。

月首十三二十五,支同隔干一位算。

推算方法:“元旦干支为根源,大小二月记心间。”推算公历日干支,首先要记住元旦曰的干支。同时,还要知道大小月及二月的天数。公历大月为31天,小月为30天,其大小月是固定不变的,唯独二月有29天和28天之分。因此,要特别注意哪年二月为29天,那年二月为28天。“小月干同地支冲,大月上句加一天。”公历小月为30天,按农历大月推算口诀,我们知道本月初一日干支,与下月初一干支则是天干相同地支相冲。公历大月为31天,在小月干地相冲的基础上,干支各加一位数,即是大月后下月一日的干支。“申子辰年年为闰,干同支冲退一天。”经过研究,发现凡地支为申、子、辰的年为公历闰年,二月为29天。在推算3月1日干支时,可按农历小月后的日干支推算方法,即在干同地干冲的基础上,干支各减一位,则为3月丨日干支。“余年二月二十八,干同干冲退二天。”除地干为申子辰年二月29天,其它年二月均为28天。在知道2月1日干支后,按干同支冲规律,干支各减二位便是3月1日的干支。“月首十三二十五,支同干隔一位算。”月首,代表每月第1日。其推法与农历日干干诀后两句相同。

五.实例:推算1998年农历6月初10日午时的干支。

⒈先按《农历大小月卦口诀》,将98年农历大小月,排上两卦,并标出闰月。同时,记住正月初一日和元旦日干支。

⒉推算1998年的干支。我们按《推算年干支口诀》在手掌上将地支子位定为甲子,为1984年,并将大拇指按在地支子位上。按“隔位逆推十年正”,大拇指从甲戌94年开始顺推,即94年为甲戌,95年为乙亥,96为丙子,97年为丁丑,98年干支则为戊寅。

⒊推算农历6月份干支。确定1998年戊寅干支以后,按《定月时干支诀》,戊干与癸干合以戊为主,戊的序数为5,将大拇指固定在戊位上。“年干隔位配寅月”,从戊位开始,将大拇指顺数,隔过天干,已,庚,辛,壬、癸五干到甲,便是98年正月的天干,即正月干支为甲寅,再从寅支开始,按甲,己,丙,丁,戊6月干支为己未。

⒋推算6月初10日(公历8月1日)干支。

⑴推算农历日干支。如前所述,98年大小月卦为《井》和《坎》。因为闰5月为29天,为阳爻,伏在《井》卦第5、6爻问,卦形为 =丨= 丨丨= 。

因为要推算的是农历98年正月初一日干支为己亥,先用大拇指在手掌亥支上定位,然后按《农历日干支推算诀》中的“大后干同地支冲,小后干支退一天”的规定,逐月推算初1日的干支。正月为大,干同支冲,大拇指跳到巳位上,2月初1日干支为已巳;干同支冲各减1,大拇指跳到亥位后,再减1位,3月初1日干支为甲戌;3月为小,干同支冲各减1大拇指跳到辰支后退1位,4月初1日为癸卯;4月为大,干同支冲,大姆指跳到酉干,5月初1日为癸酉;5月为小,干同支冲各减1,大拇指跳到卯支再退1位,闰5月 初1日为壬寅。闰5月为小,干同支冲各减1,大拇指跳到申支后再退一位,六月初一干支为辛未。知道6月初1日的干支后,从此位顺推初10曰的干支为庚辰。

⑵、推算公历8月1曰干支。

98年干支为戊寅,年支不属于申子辰,故98年2月为28天。按《曰公历干支推算口诀》中“小月干同地支冲,大月上句加一天------,余年二月二十八,干同支冲退两天”的规律,逐月推算。98年干支戊申,大拇指定在申位上。1月为大,干同支冲加一天,大拇指由申位到跳到寅,加1支到卯,2月1日为己卯,2月28天,干同干冲退二天,大拇指跳到酉位退二支,3月1日为丁未;3为大,干同支冲加1天大拇指跳到丑进一位4月1日干支为戊寅;4月为小,干同干冲,大拇指跳到申位,5月1日干支为戊申;5月为大,干同支冲加1天,大拇指跳到酉位,7月1日干支为己酉;7月为大,干同支冲加1天,大拇指跳到卯进1位到辰,8月1日干支为庚辰。

⒌推算农历6月初10(公历8月1日),该日干支为庚辰。我们按《定日时干支诀》知道,该日干庚与己相合,按“天干五合前为主”,以天干己来推算,己的序数为2,将大拇指定在天干己的位置上。“日干定时本身数”,大拇指从第二位到丙,可知庚辰日子时为丙子。将大拇指从丙子顺推到午年时,天干为壬,午时干支为壬午。

经过在掌上推算年、月、日、时干支,可知98年农历6月初10日(公历8月1日)午时干支,分别为戊寅年己未月庚辰日壬午时。

六、需要注意的几个问题。

⒈要在理解《冯氏掌上巧推年月日时干支法》的基础上,将巧记口诀和在掌上定位推算结合起来,并经常对照万年历进行推算,才可能达到熟练生巧,运用自如。

⒉再运用此法时,应先制定一种表格,并随身携带,供推算年干支时使用。

此表格如下:

年序号 本年大小月卦(闰) 立春月日时 正月初一日干支 元旦日干 支

1988 :丨:丨丨::丨::丨: 正月初八庚子日辰时 己亥 戊申

1999 丨丨:丨丨:丨:::丨: 腊月十九丁亥日未时 甲子 癸丑

在推算逐日干支时,一定要注意大小月,分清干同支冲和干同干支冲加减的区别。

掌上巧推年月日时干支法(附录)

一、 逐年推算元旦干支口诀

欲推来年元旦日,先知今年日干支。

申子辰支年为闰,干加六位支冲支。

余年天干加五位,干冲退一便可知。

推算方法:“欲推来年元旦日,先知今年日干支。”推算来年元旦日的干支,必须先知道今年元旦日的干支,并用大拇指在掌上定位。“申子辰干年为闰,干加六位支冲支。”凡年支临申子辰的为闰年,2月29天。推算下一年元旦日的干支,只要大拇指从今年元旦日支位,跳到相冲的地干支位上,而后天干顺加六位,便是来年元旦的干支。“余年天干加五位,干冲退一便可知。”除申子辰年外,其它年干2月均为28天。大拇指在掌上定好今年元旦日支位置,推算来年元旦干支时,将大拇指跳到相冲之支退一位,天干加上五位,即是来年元旦的干支。

二、逐年推算正月初一日干支口诀

欲推来年正一月,先知今年日干支。

常年退回小月数,闰月小数五六七。

小六干同天隔三,迂五前句各加一。

逢七支同天隔三,各退一位定无异。

推算方法:“欲推来年正一月,先知今年日干支。”推算来年正月初一日的干支,必须先知道今年正月初一的干支。“常年退回小月数,闰月小数五六七。”常年,指没有闰月的年份。推算农历正月初一干支,要按《农历大小月卦口诀》,逐年编上两卦,以便确定某年的小月数。如果今年没闰月,求来年正月初一日干支。经过研究,凡有闰月之年小月数分别为五、六、七三种。“小六干同天隔三,迂五前句各加一。”闰月之年,如果小月数为六,来年正月初一日干支,于前一年初一日干支则是地支相同,而天干则顺隔三位。小月数为五的,按干同天顺隔三后干支各进一位,便是来年正月初一日干支。“逢七支同天隔三,各退一位定无异。”闰月之年小月数为七的,在确定当年正月初一日干支后,推算下一年正月初一日干支,只要按支同天顺隔三位后,干支各减一位,便时来年正月初一日干支。

三、 用卦象推算公历各月第一日干支法

用卦象推算公历各月第一日的干支,主要是按公历大小月固定不便的实际,编上一个适用任何一年的卦象。然后按大小干支循环规律,进行推算各月第一日的干支。公历年大小月固定卦象,上半年是《未济》卦,下半年为《蹇》卦,其卦象如图三所示。在推算过程中,要特别注意二月,因为有28天和29天之分,所以在《未济》卦象的等二爻,标上闰年合非闰年字样,以便在推算时引起注意。在推算时,要将《公历曰干支推算口诀》做为依据,确定下月第一日干支,然后按“月首十三二十五,支同隔干一位算”,推算出所求之日干支。图三。

6月 丨 一曰干同地支冲+1 12月 = 一日干同支冲

5月 = 一日干同地支冲 11月 丨 一日干同支冲+1

4月 丨 一日干同地支冲+1 10月 = 一日干同支冲

3月 = 闰一日干同地支冲+1 09月 丨 一日干同支冲+1

2月 丨 闰年2月29天,非一日干同支冲—2 08月 = 一日干同支冲+1

非闰年2月28天,一日干同支冲+1

1月 = 元旦日干支 07月 = 一日干同支冲

四、 用卦象推算农历各月初一日干支法

农历大小月,其天数固定不变,即大月30天,小月29天。但是,由于大小月的排列不规则,因此要按《农历大小月卦口诀》先编上本年的上下半年的月卦。然后依据两个卦象,参考《农历日干支推算口诀》,在知道正月初一的日干支后,按“大后干同地支冲,小后干支退一天‘的规律,运用卦象来推算农历各月初一日的干支。经研究发现,农历相邻两月大小月的排列,共有四种类型,其推算逐月初一干支法如下:

⑴ 两小月相邻同支冲 ⑵ 两大

— 下月干同支冲—1 = 下月干

— 本月初一日干 = 本月初一日干支

⑶大小月相邻 ⑷ 大小月相邻

— 下月干同支冲 = 下月干同支冲—1

= 本月初一日干支 — 本月初一日

△ 实例:推算2001年各月初一干支

⒈按《农历大小月卦口诀》,先将2001年编上月卦。上半年为“艮”卦,下半年为“既济”卦。

⒉2001年正月初一日干支为丁亥。

⒊推算时,要将1、2月,3、4月等相邻两月,与四种排列类型对照,然后按相同类型进行推算。

⒋根据卦象,逐月进行推算。

6月“ — ”干同支冲己酉 12月“ = ” 干同支冲—1辛巳

5月“ — ”干同支冲—1己卯 11月“ — ” 干同支冲壬子

闰4月“ — ”干同支冲丙戌 10月“ = ” 干同支—1壬午

4月“ — ” 干同支冲—1丙辰 9月“ — ” 干同支冲葵丑

3月“ — ” 干同支冲丁亥 8月“ = ” 干同支冲—1癸末

2月“ — ” 干同支冲丁巳 7月“ — ” 干同支冲—1甲寅

1月“ — ” 正月初一丁亥

经过逐卦推算农历12月初一为辛巳。

请看下面的例子

public static void main(String[] args) {

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Calendar c =CalendargetInstance();

Systemoutprintln(sdfformat(cgetTime()));

cset(CalendarYEAR, 2014);

cset(CalendarMONTH,9);//从0开始,0表是1月,1表示2月依次类推

cset(CalendarDAY_OF_MONTH, 21);

cset(CalendarHOUR_OF_DAY, 23);

cset(CalendarMINUTE, 59);

cset(CalendarSECOND, 0);

Systemoutprintln(sdfformat(cgetTime()));

}

执行结果:

2015-10-29 15:31:43

2014-10-21 23:59:00

如有不明白的可继续提问。

/

  

  获取指定月份的日历信息

  

  @param year

             年

  @param month

             月

  @return

 /

public static int[] getMonthCalendar(int year, int month) {

Calendar cl = CalendargetInstance();

clset(year, month, 1);

int firstDay = clgetMinimum(CalendarDAY_OF_MONTH);

int lastDay = clgetMaximum(CalendarDAY_OF_MONTH);

int[] day = new int[lastDay];

for (int i = 0; i < lastDay; i++) {

day[i] =  i + firstDay;

}

return day;

}

objectobj=dataGridView1Rows[dataGridView1CurrentCellRowIndex]Cells[4]Value;DateTimetime=ConvertToDateTime(obj);dateTimePickerValue=time;

以上就是关于c++ 当前时间和日期获取全部的内容,包括:c++ 当前时间和日期获取、怎样根据日历推算阴历日期、Java中用Calendar类手动设置的时间如何读取等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9715137.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存