Converter string em Delphi
Tenho uma string "2018-07", como ficaria a conversão para "07/2018"?
Abs!
Abs!
Gxf
Curtidas 0
Melhor post
Elaine Urgal
04/07/2019
Sei que pode ser simples, mas não achei nd sobre :/
Olá!
1º declare na Uses do seu form a unit StrUtils, e vc pode usar AnsiReplaceStr ou StringReplace
Exemplo simples:
editData.text := ''07-2018'';
editData2.text := AnsiReplaceStr(editData.text.Text, ''-'', ''/'')) );
E nesse link tem um exemplo que deve te ajudar:
https://www.devmedia.com.br/delphi-stringreplace-como-utilizar-a-funcao-stringreplace-no-delphi/13222
Espero que ajude :)
GOSTEI 1
Mais Respostas
Gxf
04/07/2019
Sei que pode ser simples, mas não achei nd sobre :/
GOSTEI 0
Bruno Guelere
04/07/2019
Bom dia,
Você pode fazer mais ou menos dessa maneira:
Declare na suas uses SysUtils.TStringHelper.Split;
Depois na sua implementação coloque:
var
MyString: String;
Splitted: TArray<String>;
begin
MyString := 'word:doc,txt,docx';
Splitted := MyString.Split(['-']);
end.
O array ficará com duas posições, somente inverta elas.
Você pode fazer mais ou menos dessa maneira:
Declare na suas uses SysUtils.TStringHelper.Split;
Depois na sua implementação coloque:
var
MyString: String;
Splitted: TArray<String>;
begin
MyString := 'word:doc,txt,docx';
Splitted := MyString.Split(['-']);
end.
O array ficará com duas posições, somente inverta elas.
GOSTEI 0
Bruno Guelere
04/07/2019
Bom dia,
Você pode fazer mais ou menos dessa maneira:
Declare na suas uses SysUtils.TStringHelper.Split;
Depois na sua implementação coloque:
var
MyString: String;
Splitted: TArray<String>;
begin
MyString := 'word:doc,txt,docx';
Splitted := MyString.Split(['-']);
end.
O array ficará com duas posições, somente inverta elas.
Você pode fazer mais ou menos dessa maneira:
Declare na suas uses SysUtils.TStringHelper.Split;
Depois na sua implementação coloque:
var
MyString: String;
Splitted: TArray<String>;
begin
MyString := 'word:doc,txt,docx';
Splitted := MyString.Split(['-']);
end.
O array ficará com duas posições, somente inverta elas.
Onde ficou o texto de exemplo (word:doc,txt,docx) troque pela sua data (2018-07).
GOSTEI 1
Gxf
04/07/2019
Agradeço a resposta!
No caso pego a string de um XML e ela é no formato 2018-07. Deu certo a conversão do "-" para a "/", porém para deixar como 07/2018 ao invés de 2018/07, teria como tbm?
Abs.
No caso pego a string de um XML e ela é no formato 2018-07. Deu certo a conversão do "-" para a "/", porém para deixar como 07/2018 ao invés de 2018/07, teria como tbm?
Abs.
GOSTEI 0
Rafael Bosco
04/07/2019
use o comando FormatDateTime:
var NovaData: UnicodeString; OldData: UnicodeString; begin OldData := '2018-07'; NovaData := FormatDateTime('mm/yyyy', OldData); end
GOSTEI 1
Gxf
04/07/2019
Fiz desta forma e me retornou:
"There is no overloaded version of 'FormatDateTime' that can be called with these arguments"
"There is no overloaded version of 'FormatDateTime' that can be called with these arguments"
GOSTEI 0
Gxf
04/07/2019
Teria alguma forma de mudar a posição de "2018/07" e deixar "07/2018" ?
GOSTEI 0
Gxf
04/07/2019
Consegui usando a função copy. Vlwww!
GOSTEI 0