begin process at 2012 05 30 15:07:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Récupération d'informations dans une Database


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupération d'informations dans une Database

mercredi 27 avril 2011 à 12:05:14 | Récupération d'informations dans une Database

johnASP

Bonjour à tous,

Me voici encore face à un probléme..
Je voudrais pouvoir récupérer des informations dans une Database (fichier .txt)
grâce à un objet nommé "Objet_de_la_database".
Aprés de nombreuses recherches, je me tourne vers vous pour un petit coup de pouce!!

Merci d'avance.

(PS: je programme en C++.Net sous Visual Studio 2005 )
mercredi 27 avril 2011 à 13:14:11 | Re : Récupération d'informations dans une Database

CptPingu

Administrateur CodeS-SourceS
Beaucoup de non sens dans ta question:

Je voudrais pouvoir récupérer des informations dans une Database (fichier .txt)


Une database c'est censé être du SQL, non ?
Que contient ton fichier txt ? Quelle structure a-t-il ? Que contient-il ?

grâce à un objet nommé "Objet_de_la_database".


Hein ? Là c'est vraiment incompréhensible.

je programme en C++.Net sous Visual Studio 2005


Choisir du C++.Net, c'est un choix très très étrange !
Généralement on choisit du "vrai" C++ ou du C#. Mais choisir un langage à cheval entre les deux, c'est pas extraordinaire. Si tu n'es pas obligé de choisir C++.Net, fais ton choix parmi les deux autres. Sinon, bonne chance, parce que c'est pas un cadeau ce langage...

Je te conseille de poster dans la section C# qui est sûrement plus proche du C++.Net que l'est le C++.

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mercredi 27 avril 2011 à 13:39:34 | Re : Récupération d'informations dans une Database

jopop

Salut,

Ton fichier txt est dans quel format ?
Champs séparés par un token (point-virgule, tabulation ...) ?
Champs de longueur fixe ?
Sans cette info on pourra pas aller plus loin dans l'aide

@CptPingu : "Objet_de_la_database" doit être une classe de mapping.
Pour ce qui est du langage choisi, il fait bien comme il veut ^^
mercredi 27 avril 2011 à 14:36:22 | Re : Récupération d'informations dans une Database

johnASP

Pour le choix du language je ne l'ai pas choisis étant donné que c'est dans le cadre de mon stage.. Je viens de BTS Electronique donc je ne suis pas super callé en programation. Mais je compte mis mettre.

Mon fichier txt est composé de nombreuses parties de ce genre:

////////////////////////////////////////////////////////////////////////
BO_ 1792 Debug_700: 8 Vector__XXX
SG_ Stop_fender : 56|8@1+ (1,0) [0|0] "" Vector__XXX
SG_ start_stop_fender : 48|8@1+ (1,0) [0|0] "" Vector__XXX
SG_ Appui_start_cabine : 40|8@1+ (1,0) [0|0] "" Vector__XXX
SG_ Temps_appui_bouton_fender : 24|16@1+ (1,0) [0|0] "" Vector__XXX
SG_ Pto_State : 16|8@1- (1,0) [0|0] "" Vector__XXX
SG_ Tempo_PtoFenderSecurFilling : 0|16@1+ (1,0) [0|0] "" Vector__XXX
////////////////////////////////////////////////////////////////////////

Explication:

BO_ 1792 -> Message n°1792
Debug_700 -> Nom du message
8 -> Nombre d'octet
vector_XXX -> Indicateur de fin de ligne

Pour ce qui est des lignes commencant par "SG_":

Stop_fender -> Nom du message
56 -> Start bit
8 -> Nombre de bit
1 -> pour indiquer que le message est au format 'intel'
+ -> Non signé
(1,0) -> (Facteur,Offset)
[0|0] -> [Min|Max]
"" -> "Unitée"
vector_XXX -> Indicateur de fin de ligne

Voila voila!! lol
Donc en gros il faut que je parcourt tout mon fichier et que je récupére ces valeurs.



mercredi 27 avril 2011 à 14:51:14 | Re : Récupération d'informations dans une Database

jopop

Je suppose que tu as donc deux objets de mapping, qui pourraient se nommer DBObject_BO et DBObject_SG. Tu as alors 2 possibilités qui s'offrent à toi :
- tu parcours chaque ligne de ton fichier. Si elle commence par BO_ tu ajoutes un DBObject_BO à une collection de ce type, pareil pour SG_. De ce que je vois chaque valeur est séparée de la suivante par un espace, tu peux donc en toute simplicité spliter autour de ce caractère pour faire ton découpage.
- tu utilises le grouping des expressions régulières. Tu vas définir un pattern qui va te permettre de récupérer chaque information. Mais si tu débutes en prog je te déconseille cette solution qui peut être un peu compliquer à mettre en place (en fait c'est l'écriture du pattern qui risque de te causer de gros souci).

Si tu as un commencement de code, montre nous ça, on essaiera de t'orienter.
mercredi 27 avril 2011 à 14:51:40 | Re : Récupération d'informations dans une Database

CptPingu

Administrateur CodeS-SourceS

Pour ce qui est du langage choisi, il fait bien comme il veut ^^


Je n'ai pas dit le contraire. Mais s'il vient demander conseil, il doit savoir que ce n'est pas le langage le plus approprié pour débuter dans le programmation.

Pour le choix du language je ne l'ai pas choisis étant donné que c'est dans le cadre de mon stage.


C'est donc une contrainte. C'est dommage que tu n'ais pas le choix.

Mon fichier txt est composé de nombreuses parties de ce genre [...]


Ok, alors ce n'est pas du tout une base de données. La question devrait être: "Comment lire des informations dans un fichier texte qui ont un format fixe, en C++.Net ?"

Encore une fois, le C++.Net est un langage interprété qui appartient à la famille du .Net (C#, VB.Net, J#, F#, etc...) et est plus proche du C# que du C++. Je t'invite à poser ta question sur le forum C#.

Pour tenter de répondre à ta question: Il me semble que tu peux lire un fichier avec un "StreamReader".

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mercredi 27 avril 2011 à 15:24:37 | Re : Récupération d'informations dans une Database

johnASP

Pour l'instant, je n'ai pas vraiment commencé de programme. J'ai juste créé mon object et déclaré les variables dont je vais avoir besoin. Aprés j'ai commencé un algo sur papier pour m'aider à voir ce qu'il faut que je réalise.

Donc, d'aprés toi 'jopop', il faut que dans mon objet "Objet_de_la_database" je réalise des sortes de 'sous-objet' qui s'appellerai 'DBObject_BO' et 'DBObject_SG'.

Je ne comprend pas trop : "tu ajoutes un DBObject_BO à une collection de ce type,"
Peux-tu m'expliquer plus simplement ? si s'est possible..lol

D'accord 'cptPingu', je vais regarder pour 'Streamreader' et aller voir sur le forum C# .

Encore merci à vous de m'aider.
mercredi 27 avril 2011 à 16:07:34 | Re : Récupération d'informations dans une Database

jopop

Réponse acceptée !
Voilà comment je vois le truc (coder à l'arrache) :
Définition de mes objets où mapper :
Code C# :
public class DBO_BO {
	public int msg_num = 0;
	public string msg_name = "";
	public int bits_count = 0;
	public DBO_BO(int num, string name, int count) {
		this.msg_num = num;
		this.msg_name = name;
		this.msg_num = num;
	}
}
public class DBO_SG {
	public string msg_name = "";
	public int bits_count = 0;
	public int msg_format = 0;
	public bool signed = false;
	public int factor = 0;
	public int offset = 0;
	public int min = 0;
	public int max = 0;
	public string unit = "";
	//je me retape pas le constructeur, tu fais comme pour l'autre
	public DBO_DG(..) {..}
}


Définition de ma classe de mapping :
Code C# :
public class Mapping {
	public ArrayList DBO_BOs = new ArrayList();
	public ArrayList DBO_SGs = new ArrayList();
	// on parse direct' dans le constructeur
	// et je te le fais version algo, histoire que t'ais quand même un peu à bosser :p
	public Mapping(string filename) {
		// je vérifie que le fichier existe bien
		// je l'ouvre (avec un StreamReader par exemple)
		// je le parcours ; pour chaque ligne lue
			// si la ligne commence par BO_
				// j'instancie un objet DBO_BO
				// je split la ligne autour de ' '
				// je remplis mon inst avec ces valeurs
				// je l'ajoute à mon ArrayListe DBO_BOs
			// si la ligne commence par SG_
				// j'instancie un objet DBO_SG
				// je split la ligne autour de ' '
				// je remplis mon inst avec ces valeurs
				// je l'ajoute à mon ArrayListe DBO_SGs
			// sinon, je ne traite pas la ligne
		// j'oublie pas de fermer mon reader ^^
	}
}


Voilà, si je fais plus précis autant que je fasse directement ton boulot ><
mercredi 27 avril 2011 à 16:36:13 | Re : Récupération d'informations dans une Database

johnASP

Un grand MERCI à toi "jopop"!
Je pence que je vais pouvoir m'en sortir avec sa.


Cette discussion est classée dans : objet, récupération, informations, database


Répondre à ce message

Sujets en rapport avec ce message

Récupération d'informations [ par nicolas66 ] Bonjour, Pour un projet perso, je cherche à pouvoir récupérer plusieurs informations en C++ sous windows : informations du carte mère [ par Mohbenna2005 ] Comment obtenir les informations du carte mère d'une machine pour que votre application en C++ Builder ne marche que dans une seule machine. Probleme simple svp [ par netgear ] J'ai un problème assez simple mais je me souviens plus trop comment ça marche. Je code sous borland c++ builder sous XP J'ai créée un objet "p"(p = ne database [ par logant83 ] Bonjour, voila la je code un service en C et les données enregistré se stock dans ma base MySQL, mais voila le probléme c'est que j'aimerai que la tab incrustation d'un objet ds une image [ par hugo_cpp ] Slt, j'ai besoin d'un peu d'aide pour incruster un objet dans une image en C++ (un simple carré blanc ds un premier tps)!      Merci de contacter si q Problème de librairie [ par cubeni ] Bien le bonjour,Je travaille sur un projet de vision sous Borland 5.01.J'ai inclu les librairies destinees à l'acquisition d'images et lors de la créa capture d'informations sur internet [ par greg08 ] Bonjour, je suis étudiant en IUT informatique et je suis actuellement en stage Entreprise. Le but de mon stage est de créer un logiciel de capture d'i structure dynamique [ par gdpasmini ] Hello !Je dois récupérer des informations dans des paquets de type H225. Le probleme est que la taille et les champs de ces paquets sont très variable Les threads avec CLR et .NET [ par Poolpeyga ] Bonjour à tous.Je developpent en ce moment un module Tcp Client / Serveur utilisant les fonctions managées: TcpListener et TcpClient.J'ai actuellement Urgent svppp : Utilisation de <list> [ par najla1986 ] j'ai une classe message, qui comme membre a, entre autre, un objet *expediteur.Lorsque je veux envoyer une occurence de cette classe sur ma liste, par


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales