Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Braayhaan en 21 Julio 2010, 23:36 pm



Título: Calcular dias entre Fecha A y Fecha B
Publicado por: Braayhaan en 21 Julio 2010, 23:36 pm
Buenas a todos los usuarios de Foro.elhacker, bueno mi pregunta es esta.

Quiero hacer una aplicacion para contar los dias en Medio de Fecha A y Fecha B ejemplo , Cuantos dias hay desde el 25 de enero al 15 de julio.

Pero no se como empezar a hacerlo a ver si me pueden dar una ayuda por aca :P gracias xD


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 00:13 am
Restas B - A = X

X va a ser tipo TimeSpan. Los días los ves en X.TotalDays

Eso es todo :)


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Braayhaan en 22 Julio 2010, 00:24 am
Yo soy un poco nuevo con la programacion xD

a ver si me puedes explicar un poco mas :)


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Keyen Night en 22 Julio 2010, 00:42 am
Date1.Subtract(Date2).TotalDays

Así de simple :P

Tambien en vez de TotalDays puedes usar segundos, minutos, etc.


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 00:42 am
Código
  1. DateTime fechaInicial = new DateTime(2009, 3, 2, 6, 20, 30);
  2. DateTime fechafinal   = new DateTime(2010, 6, 2, 6, 20, 30);
  3.  
  4. TimeSpan result = fechafinal - fechaInicial;
  5.  
  6. MessageBox.Show(result.TotalDays);
  7.  

EDIT:

haha se me adelantó Keyen Night por 21 segundos haha :P sí exacto, podrás ver otros totales, revisa MSDN.


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Braayhaan en 22 Julio 2010, 00:53 am
Cabe destacar que estoy programando en vb.net porque el metodo substract no me sale y los ";" los borre pero tampoco me sale me sigue dando errores.

Si lo pusieron en C# a ver si lo ponen en vb.net si no bueno yo trato de sacarlo hay xd


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Keyen Night en 22 Julio 2010, 00:56 am
Tanto el ejemplo mio como el de D4N93R funcionan perfectamente en .Net y en C#


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 00:58 am
No sabía que lo hacías en VB.Net

Uhmm no me acuerdo pero debe ser igual

Código
  1. Dim fechaInicial as New DateTime(2009, 3, 2, 6, 20, 30)
  2. Dim fechaInicial as New DateTime(2010, 6, 2, 6, 20, 30);
  3. Dim result as New TimeSpan
  4.  
  5. result =  fechafinal - fechaInicial
  6.  
  7. MessageBox.Show(result.TotalDays);
  8.  

PD: Corrijo mi post anterior porque tenía un error xD HHEHEHEHHEHEH


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: seba123neo en 22 Julio 2010, 00:59 am
Código
  1. Public Class Form1
  2.  
  3.    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.        Dim fechaInicial As New DateTime(2009, 3, 2, 6, 20, 30)
  5.        Dim fechafinal As New DateTime(2010, 6, 2, 6, 20, 30)
  6.  
  7.        Dim vDiferencia As TimeSpan = fechafinal - fechaInicial
  8.  
  9.        MessageBox.Show(vDiferencia.TotalDays)
  10.    End Sub
  11. End Class

EDITO: Advertencia - mientras estabas leyendo, fueron publicadas 2 respuestas. Probablemente desees revisar tu mensaje.


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 01:01 am
Código
  1. Dim vDiferencia As TimeSpan = fechafinal - fechaInicial
  2.  

 :o NO sabía que VB hacía eso :D hohohohoh

PD, no le falta el New? ya ni se xD


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: seba123neo en 22 Julio 2010, 01:07 am
mira he visto ejemplos con y sin el New, pero bue...visual basic te agarra lo que venga.. :xD >:D jaja.


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Keyen Night en 22 Julio 2010, 01:10 am
El .Net hace transformaciones de tipos automaticamente e inicializa los objetos automaticamente tambien .Net es un lenguaje simple, comodo y muy visual lo que le falta es potencia :-\


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: seba123neo en 22 Julio 2010, 01:12 am
si le pones As New TimeSpan no soporta que despues le hagas una asignación, y se lo tenes que hacer en otra linea.

El .Net hace transformaciones de tipos automaticamente e inicializa los objetos automaticamente tambien .Net es un lenguaje simple, comodo y muy visual lo que le falta es potencia :-\

potencia en que sentido?


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Keyen Night en 22 Julio 2010, 01:15 am
Estamos haciendo un Messenger :xD así se puede en una linea:

Código
  1.        Dim fechaInicial As New DateTime(2009, 3, 2, 6, 20, 30)
  2.        Dim fechafinal As New DateTime(2010, 6, 2, 6, 20, 30)
  3.  
  4.        Dim vDiferencia As New TimeSpan(fechafinal.Ticks - fechaInicial.Ticks)
  5.  
  6.        MessageBox.Show(vDiferencia.TotalDays)


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Braayhaan en 22 Julio 2010, 01:19 am
Ya ya esta gracias a todos ya me funciona xD


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 01:39 am
si le pones As New TimeSpan no soporta que despues le hagas una asignación, y se lo tenes que hacer en otra linea.

El .Net hace transformaciones de tipos automaticamente e inicializa los objetos automaticamente tambien .Net es un lenguaje simple, comodo y muy visual lo que le falta es potencia :-\

potencia en que sentido?

Es que no es asignación es simplemente un parametro en el constructor.xD LOL no lo había visto, pero gracias por aclarar lo de la asignación,.


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: raul338 en 22 Julio 2010, 05:12 am
Pregunta: No se podia hacer con el dateDiff? (O es que me afecto la vuelta al vb6  :silbar:)

El .Net hace transformaciones de tipos automaticamente e inicializa los objetos automaticamente tambien .Net es un lenguaje simple, comodo y muy visual lo que le falta es potencia :-\

Eso se regula con las opciones (Option strict, option explicit, option infer, etc). Si te lo admite, pero es mejor programar como se debe :P


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: [D4N93R] en 22 Julio 2010, 05:18 am
[TROLL]Exacto Programar como se debe: programar en C# [/TROLL]


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: Keyen Night en 22 Julio 2010, 05:37 am
Quisas como estár más cerca del sistema, no se si me entiendo xD hay cosas en las cuales uno tiene que recurrir a C/C++ ya que no se pueden realizar en lenguajes intermedios, es que en programación mientras más nativo más cerca estas del procesador y más cerca estás del control total >:D

Con .Net me referia a Vb.Net y bueno acepto tus criticas yo soy aficionado a la programación por ahora...
Y cosas que no he podido hacer ha sido hookear apis :-X


Título: Re: Calcular dias entre Fecha A y Fecha B
Publicado por: MANULOMM en 22 Julio 2010, 15:23 pm
El .Net hace transformaciones de tipos automaticamente e inicializa los objetos automaticamente tambien .Net es un lenguaje simple, comodo y muy visual lo que le falta es potencia :-\

Hombre que pena decir que no sabes lo que dices...
1. .Net no es un lenguaje, estas confundiendo .Net con VB.Net
2. .Net es una tecnologia (Ni una plataforma, Ni un lenguaje, Ni nada solo una Tecnologia!!!) y hay muchisimos lenguajes que pueden consumir y aplicar esta tecnologia (solo es necesario que el lenguaje cumpla con unas Normas CLS).
3. Los lenguajes mas comunes son C# (Considerado el Lenguaje Nativo), VB.NET (El cual evoluciono de la plataforma COM e implemento el CLS), Visual C++, Pascal, Cobol, Phyton, J#, F# y muchos mas!!!
4. Cuando te refieres a " inicializa los objetos automaticamente" no es algo que haga .Net como tecnologia, estas caracteristicas dependen del Lenguaje VB.NET lo hace de una forma y C# lo hace de otra muy distinta...
5. ¿Le falta Potencia?, espero no sonar arrogante!! (No es mi intención y perdon si te ofendes) pero potencia le falta al Desarrollador, ¿o acaso que no has podido hacer con .Net?

Atentamente,

Juan Manuel Lombana
Microsoft Certified Professional
Microsoft Student Partner
Medellín - Colombia