Função de conversão entre vários tipos de hora Função DateTimeToFileDate: Definição: DateTimeToFileDate(DateTime: TDateTime): Integer; Converter um horário do tipo TDateTime em horário no ambiente Dos O método de acesso do horário no ambiente Dos é diferente do tipo TdateTime no VCL. Ao realizar operações de arquivo, para manter a consistência do horário, é necessário utilizar a função DateTimeToFileDate. para conversão, o valor inteiro retornado é o valor usado para descrever o tempo em Dos. Processo DateTimeToSystemTime: Definição: PRocedure DateTimeToSystemTime(DateTime: TDateTime; var SystemTime: TSystemTime Função: Converte um tempo do tipo TDateTime para o tipo TSystemTime usado pela função Win API, usado ao usar a função WinApi para manipular o tempo. Função SystemTimeToDateTime: Definição: função SystemTimeToDateTime(const SystemTime: TSystemTime): Função TDateTime: Converte um número do tipo TSysTemTime obtido na função WinApi para o tipo TDateTime; Função DateTimeToTimeStamp: Função TimeStampToDateTime: Definição: DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp; função TimeStampToDateTime(const TimeStamp: TTimeStamp): Função TDateTime: Utilizada para converter entre tipo TDataTime e TTimeStamp; TDataTime usa um double para descrever um tempo, enquanto TTimeStamp usa dois inteiros para descrever o tempo, respectivamente. A diferença entre os dois tipos pode ser encontrada na seção de descrição do tipo de dados no início do artigo. Função EncodeDate: Definição: função EncodeDate(Ano, Mês, Dia: Palavra): Função TDateTime: Insira o valor de ano (ano), mês (mês) e dia (dia), e retorne a data como tipo TDateTime, ano; intervalo O valor é 1-9999, o intervalo do mês é 1-12 e o intervalo de datas depende do mês atual. Se o valor inserido estiver fora do intervalo, um EConvertError será gerado. Processo DecodeDate: Definição: procedimento DecodeDate(Data: TDateTime; var Ano, Mês, Dia: Word Função: Insira uma data do tipo TDateTime e converta em ano, mês e dia). Se o valor de entrada for 0 ou menor que 0, então o ano, mês e dia serão todos 0. Função EncodeTime: Definição: EncodeTime (Hora, Min, Sec, MSec: Word): Função TDateTime: Insira a hora (Hora), minuto (min), O valor de segundos (Sec) e microssegundos (MSec) retorna um tempo do tipo TDateTime, que é um decimal entre 0 e 1. O intervalo de valores de Hora é 0-23, o intervalo de valores de Min é 0-59, o intervalo de valores de Sec é 0-59 e o intervalo de valores de MSec é 0-999. EConvertError é gerado por erro. Processo DecodeTime: Definição: procedimento DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word Função: Insira um tempo e converta-o em horas (Hour), minutos (min), segundos (Sec), micro The); valor em segundos (MSec). Função de conversão de tipo TDateTime e tipo de string: Função DateTimeToStr: função DateToStr Definição da função TimeToStr: função DateTimeToStr(DateTime: TDateTime): string função TimeToStr(Time: TDateTime): string; string Função: Converte um número do tipo TDateTime em uma string, DateTimeToStr converte data e hora, DateToStr converte apenas data e TimeToStr converte apenas hora. O efeito de saída convertido é AAAA-MD H: M: função SStrToDateTime função StrToDate definição da função StrToTime: função StrToDateTime(const S: string): TDateTime função StrToDate(const S: string): função TDateTime(const S: string ) : Função TDateTime: Converter uma string com formato de data e hora em TDateTime, onde S deve ser uma string válida, como no formato AA-MM-DD HH:MM:SS, caso contrário o evento EConvertError será acionado e uma mensagem de erro será exibida. solicitado. A sequência da parte horária deve ser composta por 2 a 3 sequências numéricas, e separadas pelos caracteres delimitadores definidos nas configurações regionais do Windows. Os requisitos de formato devem estar de acordo com as configurações nas configurações regionais do Windows, onde HH, MM (hora, minuto) deve ser adicionado, SS (segundo) é opcional, você também pode adicionar Am e Pm no final para distinguir manhã e tarde. Neste horário, o sistema pensará que se utiliza a representação de 12 horas, caso contrário será. considera-se que é utilizada a representação de 24 horas. O formato da parte da data deve estar em conformidade com o formato de data abreviada nas configurações regionais do Windows, que também é composto por 2 a 3 sequências numéricas. Se houver apenas 2 números na sequência, considera-se que o mês e a data são. especificado, e o ano é o ano atual, se o método de representação de ano de dois dígitos for usado nas configurações regionais, o sistema usará o seguinte método:
| ano atual | ano inicial | valor base | Digite o ano 03 | Digite o ano 50 | Digite o ano 68 |
| 1998 | 0 | 1900 | 1903 | 1950 | 1968 |
| 2002 | 0 | 2000 | 2003 | 2050 | 2068 |
| 1998 | 50 | 1948 | 2003 | 1950 | 1968 |
| 2000 | 50 | 1950 | 2003 | 1950 | 1968 |
| 2002 | 50 | 1952 | 2003 | 2050 | 1968 |
| 2020 | 50 | 1970 | 2003 | 2050 | 2068 |
| 2020 | 10 | 2010 | 2103 | 2050 | 2068 |
Primeiro, obtenha o ano inicial do ano de dois dígitos nas configurações regionais. Por exemplo, se o intervalo de anos de dois dígitos for definido como 1932-2031 nas configurações regionais, o ano inicial será 32 anos. 0, são considerados dois dígitos. O ano representa este século. Se o ano for realmente maior que 0, o valor do ano atual menos o ano inicial será usado. maior ou igual a este valor, é considerado este século, caso contrário, é considerado o próximo século. Dê alguns exemplos: Processo DateTimeToString: FormatDateTime. Função: Definição: procedimento DateTimeToString(var Resultado: string; const Formato: string; DateTime: TDateTime função FormatDateTime(const Formato: string; DateTime: TDateTime): string; Função: Obtenha a string de hora a ser gerada definindo o formato na string Formato. Por exemplo, se você deseja gerar "Hoje é sexta-feira, 5 de maio de 2002", você pode usar esses dois métodos. o mesmo efeito. Apenas um é obter a string de saída por meio da variável compartilhada, o valor está no Resultado, o outro é obter a string de saída por meio do valor de retorno, o parâmetro DateTime é o valor de data que você deseja gerar e o Formato é composto pelo sinalizador de formato e pela string adicional. A string adicional é cercada por "", assim como a função Printf em C. Por exemplo, o valor de formato de "Hoje é sexta-feira, 5 de maio de 2002" é '" Hoje é "aaaa" ano "mm" mês "dd" dia, "dddd', aaaa, mm, dd, dddd são todos identificadores de formato. As explicações dos vários identificadores de formato são as seguintes: d: Use um ou dois números inteiros para exibir o dia (1-31) dd : Use dois números inteiros para exibir o dia. Se houver menos de dois dígitos, use 0 para complementá-lo (01-31) ddd : Exiba o número da semana atual em formato abreviado. Se o Windows for a versão em inglês, ele será exibido como. Seg-Dom. Se for a versão chinesa, a exibição é igual a dddd. dddd: Exibe o número da semana atual no formato completo. Se o Windows for a versão em inglês, Monday-SumDay será exibido. Se for a versão em chinês, Monday-Sunday será exibido. . dddddd : Saída no formato de data longa no código do idioma. m: Use um ou dois números inteiros para exibir o mês (1-12) mm: Use dois números inteiros para exibir o mês e use 0 para complementar menos de dois dígitos (01-12) mmm: Use abreviação para exibir o nome do mês , a versão em inglês é exibida É janeiro-dezembro, a versão chinesa é igual a mmmm mmmm: Use o método completo para exibir o nome do mês, a versão em inglês é exibida como janeiro-dezembro, a versão chinesa é janeiro a dezembro yy : exibe o ano como um número inteiro de dois dígitos (00-99) yyyy : exibe o ano como um número inteiro de quatro dígitos (0000-9999) h : exibe a hora como um ou dois números inteiros (0-23) hh : exibe como um número inteiro de dois dígitos Horas, se houver menos de dois dígitos, use 0 para complementá-los (00-23) n: Use um ou dois números inteiros para exibir os minutos (0-60) nn : Use dois números inteiros para exibir os minutos e use 0 para compensar menos de dois dígitos (00-60) s : Use um ou dois números inteiros para exibir os segundos (0-60) ss : Use dois números inteiros para exibir os segundos e use 0 para complementá-los (00-60) ss: Use dois números inteiros para exibir segundos, menos de dois dígitos Use 0 para complementar (00-60) z: Use um a dois números inteiros para exibir o número de milissegundos (0-999) zzz : Use três números inteiros para exibir os milissegundos e use 0 para formar menos de três dígitos (000-999) tt: Exibe a data de acordo com o formato nas configurações regionais. am/pm: Usado para exibição de 12 horas, com AM significa de 0 a 12 horas e pm significa de 12 a 0 horas. Variáveis relacionadas ao tempo: O Delphi encapsula diversas informações sobre configurações locais e define uma série de variáveis relacionadas ao tempo: DateSeparator: Separador de data do caractere, usado para separar anos, meses e dias. horas, minutos, segundos ShortDateFormat: String A definição do formato de data abreviada no código do idioma. LongDateFormat: definição de formato de data longa na localidade String. ShortTimeFormat: Definição do formato de tempo curto na localidade String. LongTimeFormat: Definição do formato de longa data no código do idioma String. TimeAMString: String usada para representar a string da manhã TimePMString: String usada para representar a string da tarde ShortMonthNames: array[1..12] de String usada para abreviar a array de nomes de meses, que é o mmm exibido ao usar FormatDateTime String identificada LongMonthNames; : matriz[1..12] de String; um array usado para representar completamente o nome do mês, que é a string identificada por mmmm exibida ao usar FormatDateTime: array[1..7] de String; é ao usar FormatDateTime A string LongDayNames identificada por ddd exibida: array[1..7] of String; Uma matriz usada para representar completamente o nome da semana, que é a string identificada por ddd exibida ao usar FormatDateTime: Word = 50;