IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[C#][2.0] Conversion d'un string en DateTime


Sujet :

ASP.NET

  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut [C#][2.0] Conversion d'un string en DateTime
    Bonjour,

    J'ai un probl�me de conversion de string en datetime.
    J'utilise la cha�ne suivante :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(Convert.ToDateTime(ligne[0]).AddYears(1).CompareTo(dt) > 0)
    {
    	return false;
    }
    else 
    {
    	return true;
    }
    ce qui me retourne l'erreur :
    La cha�ne n'a pas �t� reconnue comme DateTime valide. Il existe un mot inconnu commen�ant � l'index 0.

    Or, ma cha�ne ligne[0] est coh�rente, elle contient "2001-01-09".

    De plus, ce code fonctionne parfaitement sur la version de framework 1.1, il fonctionne tr�s bien en local, mais d�s que je livre cette version sur mon serveur, j'ai l'erreur.
    Les donn�es sont les m�mes dans les 3 cas (c'est la m�me base).

    L�, je ne sais plus quoi faire.
    Si quelqu'un a une id�e, elle est bienvenue !

    Merci d'avance

  2. #2
    Membre Expert Avatar de LaChips
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 109
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 109
    Par d�faut
    Est ce que les param�tres r�gionaux de l'OS sont les m�mes?
    par exemple : fran�ais et anglais

  3. #3
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Oui, exactement les m�mes.

    j'ai m�me tent� un d�coupage de ma cha�ne en ann�e/mois/jour puis recr�er une datetime avec, �a ne marche pas plus ...

  4. #4
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Personne n'a d'id�e ???
    je s�che toujours ...

  5. #5
    Membre extr�mement actif
    Profil pro
    Inscrit en
    Ao�t 2005
    Messages
    1 240
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 240
    Par d�faut
    ligne tu le recup�res d'o�?

  6. #6
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Citation Envoy� par rattlehead
    ligne tu le recup�res d'o�?
    je le valorise avec ce que j'ai dans ma base de donn�es.
    c'est un tableau de string, et ligne[0] contient une date correcte (par exemple, "2009-07-09").

  7. #7
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    et avec ce code ??

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    DateTime dt;
    DateTime.TryParseExact(ligne[0].ToString(), "yyyy-MM-dd", null, DateTimeStyles.AssumeUniversal, out dt);

  8. #8
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    J'ai essay� ...

    j'ai m�me essay� :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    DateTime date2 = new DateTime(Convert.ToInt32(ligne[0].Substring(0, 4)), 
    Convert.ToInt32(ligne[0].Substring(5, 2)), 
    Convert.ToInt32(ligne[0].Substring(8, 2)));
    Ca ne marche toujours pas...

    (j'ai �videmment v�rifi�, j'ai bien des donn�es coh�rentes ...)

  9. #9
    Membre extr�mement actif
    Profil pro
    Inscrit en
    Ao�t 2005
    Messages
    1 240
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 240
    Par d�faut
    tu peux mettre le code qui te permet de r�cup�rer ligne

  10. #10
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Citation Envoy� par rattlehead
    tu peux mettre le code qui te permet de r�cup�rer ligne
    Je progresse petit � petit :
    alors, voici mon code :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    string[] ligne = new string[4];
    ligne = (string[])alCH[0];
    Effectivement, j'ai trac� ce que j'obtiens dans ligne[0], j'ai System.Byte[] alors que je devrais obtenir "2001-09-07".

    Je ne comprends toujours pas :
    - ce code marche bien en 1.1 et en local sur mon pc
    - ma base de donn�es est correcte, et le code 1.1 fonctionne sur cette m�me base sans probl�me.

    ...

  11. #11
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    quel est le format de donn�es de alCH[0] ??

  12. #12
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    pardon, alCH est une arraylist.

  13. #13
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    ok, mais alCH[0], c'est quoi

  14. #14
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Citation Envoy� par guitoux1
    ok, mais alCH[0], c'est quoi
    Le premier �l�ment de mon arraylist.

    Je remplis mon arraylist au chargement de ma classe � l'aide d'une requ�te et du code suivant :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    while(aReader.Read())
    {
         string[] ligne = new string[4];
     
         // ensemble date/modalité/catégorie/temps partiel
         ligne[0]=aReader.GetValue(0).ToString();
         ligne[1]=aReader.GetValue(1).ToString();
         ligne[2]=aReader.GetValue(2).ToString();
         ligne[3]=aReader.GetValue(3).ToString();
         alCH.Add(ligne);
    }
    ensuite, j'utilise le code ci-dessus pour r�cup�rer la toute premi�re valeur.

  15. #15
    Membre confirm�

    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    110
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : Alg�rie

    Informations forums :
    Inscription : Mars 2005
    Messages : 110
    Par d�faut
    si tu travail avec le framework 2.0, �a �a devrait marcher
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    string maDate     = "13/05/2006";
    DateTime myDate = DateTime.Parse(maDate);

  16. #16
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    Le premier �l�ment de mon arraylist.
    Sans blague !!
    Je te demandais quel type �tait dans ce premier �l�ment !! apparement c'est un string. Mais �a aurait pu �tre autre chose.

  17. #17
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    Citation Envoy� par guitoux1
    Sans blague !!
    Je te demandais quel type �tait dans ce premier �l�ment !! apparement c'est un string. Mais �a aurait pu �tre autre chose.

    Pardon !
    je comprends mieux ta question !
    Effectivement, c'est un string.
    Par contre, je ne comprends toujours pas pourquoi � un moment il prend le contenu comme un tableau de Byte.

  18. #18
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    dans ta BDD, c'est aussi un string (nvarchar ou autre ?)

  19. #19
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 17
    Par d�faut
    non, c'est un dateTime, que je reformate dans ma requ�te :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    aCommande.CommandText = "SELECT distinct date_format(coll_date_maj, '%Y-%m-%d'), " + 
    " coll_mod, coll_cat, coll_tp " +
    " FROM collab WHERE id =" + Id;
    Au fait, ma base c'est Mysql.

    j'utilise un reader, et ensuite ces donn�es me servent � remplir mon arraylist. C'est le code que j'ai �crit plus t�t.

    peut-�tre devrais-je changer la valorisation en utilisant un reader.getDateTime ???

  20. #20
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par d�faut
    peut-�tre devrais-je changer la valorisation en utilisant un reader.getDateTime ???
    Ya de grandes chances, vu que dans ta BDD c'est un DateTime. Je connais mal MySQL, mais � mon avis la m�thode date_format(coll_date_maj, '%Y-%m-%d') ne convertit pas en string mais fait juste modifier le format d'affichage de la date.

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 2 12 Derni�reDerni�re

Discussions similaires

  1. Conversion d'un string en Datetime sous VBScript
    Par ninsekh dans le forum G�n�ral Dotnet
    R�ponses: 1
    Dernier message: 26/09/2007, 20h42
  2. Conversion d'un string en Datetime
    Par ninsekh dans le forum MS SQL Server
    R�ponses: 4
    Dernier message: 22/08/2007, 11h22
  3. [D�butant] Conversion d'un String en Int
    Par chleuh dans le forum Langage
    R�ponses: 9
    Dernier message: 30/12/2004, 13h33
  4. [C#] Conversion d'un string en byte[] et inversement
    Par david71 dans le forum Windows Forms
    R�ponses: 5
    Dernier message: 21/12/2004, 15h10
  5. R�ponses: 2
    Dernier message: 21/06/2004, 15h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo