Conversion int en string? [Résolu]

Messages postés
707
Date d'inscription
mercredi 17 novembre 2004
Dernière intervention
29 septembre 2013
- - Dernière réponse : nhervagault
Messages postés
6069
Date d'inscription
dimanche 13 avril 2003
Dernière intervention
15 juillet 2011
- 16 nov. 2008 à 21:45
Bonjour,

je débute en C# et j'ai commencé a me faire une petite application simple pour lister des process dans un listview et réaliser des opérations dessus (kill, mettre au premier plan...). Le seul soucis que j'ai actuellement est le coté fortement typé de C#, ma méthode mainForm_Load doit remplir le listview (en mode détail) avec la liste des processus, cependant les éléments retournés sont parfois des entiers, et les items du listview doivent être de type string.

        private void mainForm_Load(object sender, EventArgs e)
        {
            Process[] processes = Process.GetProcesses();
            var query = from p in processes
                        select p;

            foreach(Process process in query){
                ListViewItem item = new ListViewItem();
                item.SubItems[0].Text = process.Id;  // Impossible de convertir implicitement le type 'int' en 'string'
                item.SubItems[1].Text = process.ProcessName;
                item.SubItems[2].Text = process.PrivateMemorySize; // idem
                item.SubItems[4].Text = process.ProcessorAffinity; // idem mais 'System.IntPtr' en 'string'
                lstProcesses.Items.Add(item);
            }
        }

Comment faire cela proprement?

Merci d'avance :)
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
89
3
Merci
Salut,

Tout type possède une méthode ToString permettant d'obtenir une représentation sous forme de chaine de caractères censée le représenter.

item.SubItems[0].Text = process.Id.ToString();

/*
coq
MVP Visual C#
CoqBlog
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 117 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
6069
Date d'inscription
dimanche 13 avril 2003
Dernière intervention
15 juillet 2011
23
3
Merci
Salut

Avec un syntaxe comme ça ?

item.SubItems[4].Text = process.ProcessorAffinity as String;
ou
item.SubItems[4].Text = process.ProcessorAffinity.ToString();

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 117 internautes nous ont dit merci ce mois-ci

Commenter la réponse de nhervagault
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
89
0
Merci
J'ai comme un doute pour l'utilisation de l'opérateur "as".

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq
Messages postés
707
Date d'inscription
mercredi 17 novembre 2004
Dernière intervention
29 septembre 2013
0
Merci
merci beaucoup ^^

Pour le .ToString ca fonctionne, pour le as ca donne encore une autre erreur :s

Erreur    1    Impossible de convertir le type 'int' en 'string' via une conversion de référence, une conversion boxing, une conversion unboxing, une conversion wrapping ou une conversion null type    C:\Users\Shadow\Documents\Visual Studio 2008\Projects\ProcessLinq\ProcessLinq\mainForm.cs    30    41    ProcessLinq
Commenter la réponse de shadow1779
Messages postés
357
Date d'inscription
jeudi 8 juin 2006
Dernière intervention
26 décembre 2011
3
0
Merci
Salut,
L'opérateur as est semblable à une opération de cast:
[http://msdn.microsoft.com/fr-fr/library/cscsdfbt%28VS.80%29.aspx [Lien]]
http://msdn.microsoft.com/fr-fr/library/cscsdfbt(VS.80).aspx
A+
Commenter la réponse de xmox667
Messages postés
6069
Date d'inscription
dimanche 13 avril 2003
Dernière intervention
15 juillet 2011
23
0
Merci
Ok
pour le as

Je l'utilise pour  des cast de object --> string exemple lecture de datareader
et pour int --> string il faut utiliser un convertisseur ToString
Commenter la réponse de nhervagault

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.