Accueil > Forum > > > > Split d'une string
Split d'une string
vendredi 17 novembre 2006 à 11:49:02 |
Split d'une string

sebastienmz
|
Bonjour j'ai une string qui contien la date dans ce format : Fri Nov 17 11:43:56 2006 et j'aimerais mettre chaque partie dans une char différente par exemple : date = 17 jour = Fri mois = Nov annee = 2006 heure = 11 minutes = 43 sec = 56 comment faire ? ----- Sébastien Metthez www.sebastien-metthez.com
|
|
vendredi 17 novembre 2006 à 12:02:58 |
Re : Split d'une string

buno
|
Salut, Il n'y a pas de fonction toute faite dans la classe string, il te faudra la coder toi-même. A priori, pas de souci majeur car toutes tes données sont séparées par des espaces... Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai... Le site de mon mariage
|
|
vendredi 17 novembre 2006 à 13:30:10 |
Re : Split d'une string

sebastienmz
|
Mais comment faire ? ----- Sébastien Metthez www.sebastien-metthez.com
|
|
vendredi 17 novembre 2006 à 14:24:06 |
Re : Split d'une string

Ombitious_Developper
|
Réponse acceptée !
Salut:
Voici une solution, quoique les gens ici détestent l'utilisation de "strtok". Comme ça tu as au moins une idée claire de ce qu'il faut faire.
#include <string.h> #include <iostream>
using namespace std;
char ** tokenize (char * s, const char * delimiter, int n) { char ** res = new char * [n]; char * sep = strtok (s, delimiter); int i = 0; while (sep) { res [i++] = strdup (sep); sep = strtok (NULL, delimiter); } return res; }
int main(int argc, char *argv[]) { char str [] = "Fri Nov 17 11:43:56 2006"; char ** tokens1; char ** tokens2; tokens1 = tokenize (str, " ", 5); tokens2 = tokenize (tokens1 [3], ":", 3); cout << "Jour : " << tokens1 [0] << endl; cout << "Mois : " << tokens1 [1] << endl; cout << "Date : " << tokens1 [2] << endl; cout << "Heures : " << tokens2 [0] << endl; cout << "Minutes : " << tokens2 [1] << endl; cout << "Secondes : " << tokens2 [2] << endl; cout << "Annee: " << tokens1 [4] << endl; system("PAUSE"); return EXIT_SUCCESS; }
|
|
vendredi 17 novembre 2006 à 14:26:57 |
Re : Split d'une string

Ombitious_Developper
|
Salut:
J'ai oublié de libérer l'espace mémoire utilisé vers la fin du programme:
ajoutes ceci après l'affichage:
delete [] tokens1; delete [] tokens2;
|
|
vendredi 17 novembre 2006 à 14:32:30 |
Re : Split d'une string

buno
|
Soit tu parcours ta chaine avec 2 pointeurs, tu bouges le second jusqu'à trouver un espace, tu traites ce qui se trouve entre les 2 pointeurs et tu recommence... Soit tu utilises la fonction sscanf(). string truc="Fri Nov 17 11:43:56 2006"; char j[4],m[4]; int d,h,mm,s,a; sscanf(truc.c_str(),"%3s %3s %d %d:%d:%d %d",j,m,&d,&h,&mm,&s,&a); Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai... Le site de mon mariage
|
|
vendredi 17 novembre 2006 à 14:33:57 |
Re : Split d'une string

sebastienmz
|
sa me dit : [Warning] assignment makes pointer from integer without a cast
Sébastien Metthez www.sebastien-metthez.com
|
|
vendredi 17 novembre 2006 à 14:41:10 |
Re : Split d'une string

sebastienmz
|
oublier de précicer je suis sous dev cpp et je fait du C donc les news ne marche pas
Sébastien Metthez www.sebastien-metthez.com
|
|
vendredi 17 novembre 2006 à 14:46:59 |
Re : Split d'une string

buno
|
En précisant ton environnement dès le départ, tu aurais eu une réponse plus adéquate... Les new du C++ sont les malloc du C Après, à toi d'adapter... Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai... Le site de mon mariage
|
|
vendredi 17 novembre 2006 à 17:46:52 |
Re : Split d'une string

Ombitious_Developper
|
Salut:
Je veux critiquer ma solution si tu utilises plusieurs threads qui fait chacun appel à la fonction "strtok" ça risque de donner des résultats erronés.
Mais dans ton cas comme tu utilises "strtok" dans une simple programme monothread cette fonction est l'idéale solution pour toi.
Sinon tu peux créer ta propre fonction/classe pour faire le même travail.
|
|
Cette discussion est classée dans : date, string, split
Répondre à ce message
Sujets en rapport avec ce message
[FUNCTION] : Problème de déclaration [ par Alex120 ]
Bonjour, J'ai écrit une fonction split() dans un fichier cpp : #include #include "vector.h" /** * FUNCTION SPLIT() */ vo
Urgent : Probleme avec split d'un string [ par QuakeCoder ]
salut. j'ai un char * qui contient "C:\\Documents and Settings\\quick\\Bureau\\Nouveau dossier\\test me.exe" comment faire pour extraire juste ca => "
Recupérer des string par lecture. [ par CicinhoRaul ]
Bonjour à tous, désolé de vous déranger mais j'ai un problème en C++ à resoudre à propos de la lecture d'un fichier; (je reconnais, le C++ n'est pas t
Conversion string en date [ par jpeg ]
j'aimerai convertir (en C++ standard, sans MFC) une chaine de caractère de n'importe quel format (DD/MM/YYYY ou DD/MM/YYYY hh:mm ou YYYYMMDD ou ....)
Conversion des types string en int [ par tanguy_laverdure ]
Bonjour, j'essai en vain de convertir un type string en int. Y a t il des méthodes directes de string.h qui permettent de faire cela ou faut il me fai
Parser un string simple en C++ ? [ par Nicocyno ]
Bonjour a tous,je pense que mon problème est simple et pourtant je n'ai pas encore trouvé de réponse autour de moi :(String monString ="[objet1]elemen
date et heures en bd [ par systemic_anomaly ]
J'ai un prob avec une commande sql depuis deka un certain temps. Il s'agit de la soustraction de 2 heures declarees comme suit : HDepPrev DATE
probleme en langage C - URGENT!!!!! [ par mazo0012 ]
bonjourjai un gros pb en C, si quelq'un pouvait m'aider apidement je commence a devenir dingue!!!!!!jexplike:tout simplement, j'essaye de saisir le ch
probleme urgent avec borland c++ [ par morgandetoi06 ]
ça veut pas me compiler ça:#include typedef struct{string telephone;string nom;string prenom;string surnom;}fi;ça me dit :Nom de ype attendu; manquant
Ouvrir et lire un fichier texte en C++.net [ par Eels ]
Voila j'aimerais ouvrir un fichier texte qui se presente sous cette forme:NumPort Nom du trojanNumPort2 Nom du trojan 2En fait, je fais un scanner de
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|