leer - llenar datatable c#
Convierta la fecha de datatable en formato dd/mm/aaaa en asp.net (4)
Tengo una datatable
de datatable
en la que quiero obtener la fecha en formato dd/mm/yyyy
.
Actualmente tengo una fecha como
02-01-2012 12:00:00 a.m.
A continuación está mi código
strInvoice_date = dt.Rows[i]["INVOICE_DATE"].ToString();
Debajo del código puede ayudarte
strInvoice_date = Convert.ToDateTime(dt.Rows[i]["INVOICE_DATE"].ToString("0:dd/MM/yyyy"));
Debe pasar el formato de fecha requerido en el método ToString (),
strInvoice_date = Convert.ToDateTime(dt.Rows[i]["INVOICE_DATE"]).ToString("dd/mm/yyyy");
Para obtener más detalles sobre el formato de fecha y hora, visite
Su dt.Rows[i]["INVOICE_DATE"]
devuelve el object
y cuando llama ToString
método ToString
, llamará a ToString
object.ToString()
no a DateTime.ToString()
.
Si su columna INVOICE_DATE
es DateTime
en su datatable, puede convertir su object
explícitamente a DateTime
y usar el formato dd/MM/yyyy
(supongo que quiere meses en lugar de minutos) con una cultura apropiada como InvariantCulture
.
var Invoice_date = (DateTime)dt.Rows[i]["INVOICE_DATE"]
.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);
Si su columna INVOICE_DATE
es de string
en su tabla de datos, necesita obtener su representación de cadena con object.ToString
, analizarla en Datetime
y generar su representación de cadena.
var Invoice_date = DateTime.ParseExact(dt.Rows[i]["INVOICE_DATE"].ToString(),
"dd-MM-yyyy hh:mm:ss tt",
CultureInfo.InvariantCulture)
.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);
Convierte y luego representa como quieras:
strInvoice_date = Convert.ToDateTime(dt.Rows[i]["INVOICE_DATE"]).ToString("dd/MM/yyyy");