Conversion AnsiString en TString [Résolu]

SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 15 mars 2006 à 17:49 - Dernière réponse : SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention
- 17 mars 2006 à 23:45
Bonjour,

j'utilise le logiciel builder c++ 5.

Je lis dans un fichier une liste de nom et je voudrais afficher les noms dans un combobox.
Je lis bien dans mon fichier les noms car je les affiches dans un edit pour vérifier mais quand je veux les mettre dans mon combobox il y a un pb :/

Voici le bout de mon code

char *couple;//créé dynamiquement a la bonne taille avant de le mettre dans le combo
int nb_couple;
ComboBox1->Items[nb_couple]=couple;

Quand je compile j'ai ce probleme : "impossible de trouver une correspondance pour Tstring::operator=(AnsiString)"
Pouvez vous m'aider svp ?

Puisque j'y suit lol je vais demmander une autre chose lol :D

je voudrais que quand j'ouvre mon fichier, le curseur se place juste après le dernier élement du fichier mais j'ai pas trouvé la fonction :/
Sinon quand je test la fin du fichier avec Eof(desc) ou Feof(desc), il me dit que la fonction n'est pas définie :/ alors que j'ai bien rajouter les includes.

Que faire ?

Merci par avance :P
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
tibob51 268 Messages postés vendredi 30 avril 2004Date d'inscription 13 mai 2013 Dernière intervention - 16 mars 2006 à 11:19
3
Merci
Salut ,
j'utilise borland aussi donc je vais pouvoir t'aider ;)

première ment AnsiString est un composant propre a borland,
deuxièmement avec ComboBox1->Items[nb_couple]=couple;
couple doit etre un TSring.

tu a deux solution la première la plus simple mais pas la plus pratique
ComboBox1->Items->Add(couple); //rajoutera le texte de couple a la fin de la liste

ou la deuxième je pense la meilleur pour toi:
ComboBox1->Items->Strings[a]=couple;//où a est la position dans la liste

Merci tibob51 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

Commenter la réponse de tibob51
Meilleure réponse
tibob51 268 Messages postés vendredi 30 avril 2004Date d'inscription 13 mai 2013 Dernière intervention - 16 mars 2006 à 11:37
3
Merci
c'est
#include qu'il te faut

Merci tibob51 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

Commenter la réponse de tibob51
SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 16 mars 2006 à 11:22
0
Merci
Salut,

merci de ta réponse :)
Les 2 solutions me conviennent lol :)

Et sinon tu n'aurais pas une idée pour la fin de fichier :/

Car il me dit que Eof et Feof ne sont pas defini alors que j'ai bien rajouté le bon include :/

Merci encore une foi :D
Commenter la réponse de SaXo360
tibob51 268 Messages postés vendredi 30 avril 2004Date d'inscription 13 mai 2013 Dernière intervention - 16 mars 2006 à 11:30
0
Merci
je ne connais pas eof et feof
mais en allant jetter un oeil,j'ai remarquer qu'il ya deux fonction Eof et eof (attention les majuscule font la différence).
toi ici tu aurait apparement besoin de eof(),car Eof() est utilisé pour les base de données!
Commenter la réponse de tibob51
SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 16 mars 2006 à 11:35
0
Merci
Non, j'ai tout essayé, Eof,eof,Feof,feof et rien ne marche >>"appel a une fonction non definie" pourtant j'ai rajouter stdio.h :/
Commenter la réponse de SaXo360
SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 16 mars 2006 à 11:40
0
Merci
Merci bien :D dans mon aide il disait stdio :/
merci beaucoup
Commenter la réponse de SaXo360
SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 17 mars 2006 à 13:50
0
Merci
Bonjour,

alors voilà, je voulais la fonction fin de fichier pour que je puisse lire jusqu'a la fin du fichier lol mais avec eof ca marche pas, j'ai aucun résultat.
C'est pour ca que j'utilise un autre test en attendant.

Le probleme ci dessous c'est que j'ai un fichier txt avec dedans des noms séparé par un ;

exemple: toto;kikou;exo;martin;

Mais quand je récupere et je met dans mon combobox j'obtiens des truc comme ca :
toto|$
kikou$u
exo|
martinu

Voici mon code (juste la boucle) :

while(/*eof(desc)*/nb_couple!=4)
{
FileRead(desc,&var,1);


if(var==';')
{
int p=0;


p=i; //je sais c'est inutile mais j'avais fais ca pour tester autre chose
couple=new char[p];


for(int j=0; jItems->Add(couple);
nb_couple++;
i=0;
delete(couple);
}


else
{
mots[i]=var;
i++;
}
};

D'où vient le pb? :/

Merci par avance :P
Commenter la réponse de SaXo360
tibob51 268 Messages postés vendredi 30 avril 2004Date d'inscription 13 mai 2013 Dernière intervention - 17 mars 2006 à 23:42
0
Merci
il te manque le caractère de fin (\0)

regarde l'exemple:

char *couple;

couple= new char [8];
char mots[8]="abc";
int c=8;
int j;
for(j=0; j<3; j++)
{
couple[j]=mots[j];
}
couple[j+1]='\0';//on rajoute le caractére de fin
ComboBox1->Items->Add(couple);

delete couple;
Commenter la réponse de tibob51
SaXo360 31 Messages postés mardi 16 mars 2004Date d'inscription 21 mars 2007 Dernière intervention - 17 mars 2006 à 23:45
0
Merci
Non ca marche pas :/ deja essayé.

J'ai ouvert un autre post avec cette question
Commenter la réponse de SaXo360

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.