<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.28.3">
</HEAD>
<BODY>
gracias a los dos (tanto salvador como daniel)!<BR>
<BR>
mi aproximación ha sido algo rudimentaria, <BR>
<BR>
std:string time = "2010-07-09T00:51:21.34253Z";<BR>
<BR>
int year, month, dow, h, m, s;<BR>
<BR>
sscanf(time.c_str(),"%d-%d%dT%d:%d:%dZ", &year, &month, &dow, &h, &m, &s);<BR>
time_t tiempo = static_cast<time_t>((year-1900)*365*24*360 + month*30*24*360 + dow*24*360 + h*360 + m*60 +s);<BR>
<BR>
asi ya se puede operar con funciones como difftime etc... pero no me gusta un pelo<BR>
<BR>
sin duda vuestras propuestas son mejores, sobre todo la de dejar que oracle haga el trabajo. Intentaré realizarlas que siempre es una mejor solución que mi pequeña chapucilla.<BR>
<BR>
gracias por todo!<BR>
<BR>
On Wed, 2010-09-08 at 10:21 -0300, Daniel Campos wrote:<BR>
<BLOCKQUOTE TYPE=CITE>
pues lo mejor es que oracle mismo haga el cálculo, no sé de donde te está llegando ese string, pero si podés sacarle los milisegundos es muuuucho mas fácil.<BR>
<BR>
si tenes algo asi : '2010-08-09 09:00:00.00000' trata de dejarlo asi : '2010-08-09 09:00:00'<BR>
<BR>
entendiendo siempre q tu formato de fecha es YYYY-MM-DD HH24:MI:SS <BR>
<BR>
de los strings que te lleguen, una cosa asi podrias hacer :<BR>
<BR>
sSQL = "select to_date('" + string1_timestamp.c_str() + "', 'syyyy-mm-dd hh24:mi:ss') - to_date('" + string2_timestamp.c_str() + "', 'syyyy-mm-dd hh24:mi:ss') from dual";<BR>
<BR>
y le mandas esta consulta a oracle.<BR>
<BR>
todo eso te va a devolver otro valor, algo asi como .00208333, es el valor en días (habría que dividir 1 dia a minutos para tu caso) . <BR>
<BR>
espero te sirva.<BR>
<BR>
saludos,<BR>
<BR>
dani<BR>
<BR>
El 8 de septiembre de 2010 05:05, Josu Diaz de Arcaya <<A HREF="mailto:josu.arcaya@gmail.com">josu.arcaya@gmail.com</A>> escribió:
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
Hola, <BR>
<BR>
Llevo algun tiempo en la lista leyendo los problemas y soluciones y aprendiendo bastante, aunque aun no he participado. Paso a describir mi problema.<BR>
<BR>
Yo leo de una BBDD Oracle varios timestamp del tipo '2010-08-09 09:00:00.00000' como un string.<BR>
<BR>
Mi problema es que quiero realizar operaciones sobre ellos, del tipo minutos entre dos timestamp... Vamos que me vendria de perlas pasar ese string a un time_t, pero no tengo ni idea de cómo<BR>
<BR>
La idea es intentar evitar la conversión manualmente, ¿existe alguna funcion que pueda realizar esto?<BR>
<BR>
Se que no he planteado ningun codigo pero creo que la duda es bastante concreta.<BR>
<BR>
Un saludo y gracias!
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BLOCKQUOTE>
<BR>
_______________________________________________<BR>
Lista de correo Cconclase <A HREF="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</A><BR>
<A HREF="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</A><BR>
Bajas: <A HREF="http://listas.conclase.net/index.php?gid=2&mnu=FAQ">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</A>
</BLOCKQUOTE>
</BLOCKQUOTE>
<BLOCKQUOTE TYPE=CITE>
<BR>
<BR>
<BR>
-- <BR>
Por favor, evite enviarme documentos adjuntos en formato Word o PowerPoint.<BR>
Lea <A HREF="http://www.gnu.org/philosophy/no-word-attachments.es.html">http://www.gnu.org/philosophy/no-word-attachments.es.html</A>
<PRE>
_______________________________________________
Lista de correo Cconclase <A HREF="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</A>
<A HREF="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</A>
Bajas: <A HREF="http://listas.conclase.net/index.php?gid=2&mnu=FAQ">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</A>
</PRE>
</BLOCKQUOTE>
<BR>
</BODY>
</HTML>