Foros del Web » Programación para mayores de 30 ;) » .NET »

pasar de string a datetime

Estas en el tema de pasar de string a datetime en el foro de .NET en Foros del Web. hola. ya se que en internet hay ejemplos de esdto, pero lo he intentado y no me sirve.Que desesperación!! la cuestion es que tengo un ...
  #1 (permalink)  
Antiguo 16/01/2007, 08:48
 
Fecha de Ingreso: diciembre-2006
Mensajes: 43
Antigüedad: 17 años, 4 meses
Puntos: 0
pasar de string a datetime

hola.
ya se que en internet hay ejemplos de esdto, pero lo he intentado y no me sirve.Que desesperación!!

la cuestion es que tengo un string asi :

03/04/1999 (Por ejemplo) , el string este no tiene la hora, solo la fecha

he intentado pasar a datetime pero me da error : "String was not recognized as a valid DateTime."


he intentado con datetime.convert(), Parse.todatetime() y nada , me da error.
Supongo que será que algo hago mal, porque se puede hacer no??

gracias por escucharme.
  #2 (permalink)  
Antiguo 16/01/2007, 10:57
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Re: pasar de string a datetime

Convert.ToDateTime(objeto); << ya probaste??
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #3 (permalink)  
Antiguo 16/01/2007, 11:29
 
Fecha de Ingreso: mayo-2006
Mensajes: 243
Antigüedad: 18 años
Puntos: 0
Re: pasar de string a datetime

Aquí te dejo un ejemplo en C#:

Código:
DateTime fecha = DateTime.ParseExact((Request.QueryString["dia"]), "dd/MM/yy", CultureInfo.InvariantCulture);
en donde con: "dd/MM/yy", le dices en que formato está el string que quieres convertir a fecha

Espero que te sirva

Saludos!
  #4 (permalink)  
Antiguo 18/01/2007, 01:42
 
Fecha de Ingreso: diciembre-2006
Mensajes: 43
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: pasar de string a datetime

pues no me funciona y no se porque, alguna sugerencia mas??

input string not recognized valid datetime
  #5 (permalink)  
Antiguo 18/01/2007, 07:04
 
Fecha de Ingreso: diciembre-2006
Mensajes: 43
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: pasar de string a datetime

bale, ya me funciona. otra pregunta:

como hago para que el usuario siempre introduzca las fechas en el formato :

dd/MM/YYYY

yo le he puesto esto:

int x;
int y;
if (Fecha.Text==""+x+y+"/"+x+y+"/"+x+y+x+y) bien;
else mal;

pero claro, como no le doy valores a las variables me coje como 0.
entonces estoy comparando (00/00/0000), y yo quiero que el formato sea asi, pero sin decir que numeros tienen que ser.

gracias
  #6 (permalink)  
Antiguo 18/01/2007, 11:20
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Re: pasar de string a datetime

ya probaste con

Código:
char.IsDigit(objeto)
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.

Última edición por erick_arcini; 18/01/2007 a las 11:37
  #7 (permalink)  
Antiguo 24/01/2007, 15:12
 
Fecha de Ingreso: octubre-2006
Mensajes: 1
Antigüedad: 17 años, 7 meses
Puntos: 0
Tengo un gran problema con esto de string a datetime

me explico estoy leyendo una celda de Excel la celda tiene un valor Date de forma hh:mm, sucede que la aplicación lo lee de tipo string y lo trasmforma como en valores decimales por ejemplo: 0:05 es igual a 0.003472222 hasta ese momento va todo bien pero ya en la aplicación ASP.net yo quiero volver a ponerlo 0:05, pero cuando utilizo los metodos de conversion como el Cdate(valor) me sale el siguiente error.



System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidCastException: Conversion from string "0.00347222222222222" to type 'Date' is not valid.

at Microsoft.VisualBasic.CompilerServices.Conversions .ToDate(String Value)

at Microsoft.VisualBasic.CompilerServices.Conversions .ToDate(Object Value)

at Service.SECUENCIADEEVENTO(String sFilename, String SourceData, String SourceSection) in c:\inetpub\wwwroot\xlsws_vpn\App_Code\Service.vb:l ine 1933

at Service.Upload_XLSData(String sFilename, String sSourceData, String sSourceSection) in c:\inetpub\wwwroot\xlsws_vpn\App_Code\Service.vb:l ine 667

--- End of inner exception stack trace ---

las gracias anticipadas
  #8 (permalink)  
Antiguo 24/01/2007, 16:33
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Re: pasar de string a datetime

y por que no mandas directo el string?
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #9 (permalink)  
Antiguo 25/01/2007, 16:58
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Re: pasar de string a datetime

ese problema es dependiendo del la configuracion regional de la maquina, si es EU debe ser la fecha en formato MM/dd/yyyy para hacer el parse pero para evitarte problemas y siempre te lea bien el formato transforma tu string en formato yyyy/MM/dd

ejemplo

string sDate = "2006/01/25";
DateTime d = DateTime.Parse(sDate);

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #10 (permalink)  
Antiguo 17/08/2009, 15:36
 
Fecha de Ingreso: abril-2007
Mensajes: 20
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Re: pasar de string a datetime

Cita:
Iniciado por roberto80 Ver Mensaje
bale, ya me funciona. otra pregunta:

como hago para que el usuario siempre introduzca las fechas en el formato :

dd/MM/YYYY

yo le he puesto esto:

int x;
int y;
if (Fecha.Text==""+x+y+"/"+x+y+"/"+x+y+x+y) bien;
else mal;

pero claro, como no le doy valores a las variables me coje como 0.
entonces estoy comparando (00/00/0000), y yo quiero que el formato sea asi, pero sin decir que numeros tienen que ser.

gracias
Nooooombre, usa regular expressions, despues haces la conversión de string a DateTime, pero encerrado en un bloque try-catch, si te da una excepción es porque el formato está malo (por ejemplo, viene un dia 31 para febrero, por ejemplo) y ahi lo controlas.

En otras palabras, el algoritmo sería algo asi:

- asignas la fecha en un string
- verificas si el string cumple con el formato DD/MM/AAAA (solo dígitos), creo que el reg. expression sería mas o menos algo asi como "d{2}/d{2}/d{4}".
- si pasa la validación del regular expression, intentas (try-catch) convertir este string a un datetime con DateTime.Parse(fecha en string).
- si da alguna excepción es porque vienen los dias mayores de 30 o 31 para algun mes q no le corresponda, o algun mes mayor que 12) y ahi muestras algun mensaje de error.

Espero te sirva.

Saludos desde El Salvador
  #11 (permalink)  
Antiguo 18/08/2009, 01:02
 
Fecha de Ingreso: agosto-2009
Mensajes: 27
Antigüedad: 14 años, 8 meses
Puntos: 1
Respuesta: pasar de string a datetime

Y por qué no utilizas un control calendar y así no tienes que convertir el String a DateTime, das seguridad para que el usuario no te meta, por ejemplo, números negativos, o día 32 de un mes. Además darás con una solución más profesional.
  #12 (permalink)  
Antiguo 20/08/2009, 18:57
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Respuesta: pasar de string a datetime

No revivir post viejos, checar antes la fecha

Fecha ultimo post 25-ene-2007, 16:58
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 03:21.