¿Cómo convertir el formato de fecha a DD-MM-YYYY en C #? Solo busco el formato DD-MM-YYYY, nada más.
string formatted = date.ToString("dd-MM-yyyy");
lo haré.
Aquí hay una buena referencia para diferentes formatos.
De acuerdo con uno de los primeros resultados de búsqueda de Google: http://www.csharp-examples.net/string-format-datetime/
// Where 'dt' is the DateTime object... String.Format("{0:dd-MM-yyyy}", dt);
Aquí está el método más simple.
Este es el valor de cadena: “5/13/2012”
DateTime _date; string day = ""; _date = DateTime.Parse("5/13/2012"); day = _date.ToString("dd-MMM-yyyy");
Saldrá como: 13-mayo-2012
string formattedDate = yourDate.ToString("dd-MM-yyyy");
DateTime dt = DateTime.Now; String.Format("{0:dd-MM-yyyy}", dt);
Primero convierta su cadena en la variable DateTime:
DateTime date = DateTime.Parse(your variable);
A continuación, convierta esta variable a cadena en el formato correcto:
String dateInString = date.ToString("dd-MM-yyyy");
DateTime s1 = System.Convert.ToDateTime(textbox.Trim()); DateTime date = (s1); String frmdt = date.ToString("dd-MM-yyyy");
trabajará
Aquí vamos:
DateTime time = DateTime.Now; Console.WriteLine(time.Day + "-" + time.Month + "-" + time.Year);
¡TRABAJOS! 🙂
¿Tiene su variable de fecha almacenada como una Cadena o un tipo de Fecha?
En ese caso, tendrá que hacer algo como
DateTime myDate = null;
DateTime.TryParse(myString,myDate);
o
Convert.ToDateTime(myString);
Luego puede llamar a ToString (“dd-MM-aaaa”) en su variable de fecha
Me encontré con el mismo problema. Lo que tenía que hacer era agregar una referencia en la parte superior de la clase y cambiar CultureInfo del hilo que se está ejecutando actualmente.
using System.Threading; string cultureName = "fr-CA"; Thread.CurrentThread.CurrentCulture = new CultureInfo(cultureName); DateTime theDate = new DateTime(2015, 11, 06); theDate.ToString("g"); Console.WriteLine(theDate);
Todo lo que tiene que hacer es cambiar el nombre de la cultura, por ejemplo: “en-US” = Estados Unidos “fr-FR” = francés de habla francesa “fr-CA” = francés de habla canadiense, etc …
El problema es que está tratando de convertir una cadena, por lo que primero debe convertir su variable a la fecha y luego aplicar algo como
string date = variableConvertedToDate.ToString("dd-MM-yyyy")
o
string date = variableConvertedToDate.ToShortDateString()
en este caso el resultado es dd / MM / aaaa.
Desde C # 6.0 en adelante (Visual Studio 2015 y más reciente), puede simplemente usar una cadena interpolada con formato:
var date = new DateTime(2017, 8, 3); var formattedDate = $"{date:dd-MM-yyyy}";
return inObj == DBNull.Value? “”: (Convert.ToDateTime (inObj)). ToString (“MM / dd / aaaa”). ToString ();
var dateTimeString = "21-10-2014 15:40:30"; dateTimeString = Regex.Replace(dateTimeString, @"[^\u0000-\u007F]", string.Empty); var inputFormat = "dd-MM-yyyy HH:mm:ss"; var outputFormat = "yyyy-MM-dd HH:mm:ss"; var dateTime = DateTime.ParseExact(dateTimeString, inputFormat, CultureInfo.InvariantCulture); var output = dateTime.ToString(outputFormat); Console.WriteLine(output);
Prueba esto, funciona para mí.
DateTime dt = DateTime.Now; String.Format("{0:dd-MM-yyyy}", dt);