Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Paul Bacelar
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
-- Paul Bacelar
"Boris Sargos" wrote in message news:41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Je pense qu'il vous faut un peu de recul car votre problème vient d'une
erreur de conception.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une
string et que vous ne pouvez pas précisément connaître la classe dont elle
est le fruit de la méthode ToString, c'est qu'il vous manque des info.
--
Paul Bacelar
"Boris Sargos" <bsargos@wanadoo.fr> wrote in message
news:41fb7b60$0$10489$8fcfb975@news.wanadoo.fr...
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne
connait son Type qu'à l'exécution.
Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) {
object obj;
if(type is typeof(int)) obj=int.Parse(MyString);
if(type is typeof(double)) obj=double.Parse(MyString);
...
if(type is typeof(long)) obj=long.Parse(MyString);
return obj;
}
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
-- Paul Bacelar
"Boris Sargos" wrote in message news:41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Sylvain Lafontaine
Les fonctions Parse() ne sont pas des fonctions de casting et le type d'un String est toujours un String, même si ce qu'il contient peut être convertie dans plusieurs cas dans un des types de base.
S. L.
"Boris Sargos" wrote in message news:41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Les fonctions Parse() ne sont pas des fonctions de casting et le type d'un
String est toujours un String, même si ce qu'il contient peut être convertie
dans plusieurs cas dans un des types de base.
S. L.
"Boris Sargos" <bsargos@wanadoo.fr> wrote in message
news:41fb7b60$0$10489$8fcfb975@news.wanadoo.fr...
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait
son Type qu'à l'exécution.
Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj;
if(type is typeof(int)) obj=int.Parse(MyString);
if(type is typeof(double)) obj=double.Parse(MyString);
...
if(type is typeof(long)) obj=long.Parse(MyString);
return obj;
}
Les fonctions Parse() ne sont pas des fonctions de casting et le type d'un String est toujours un String, même si ce qu'il contient peut être convertie dans plusieurs cas dans un des types de base.
S. L.
"Boris Sargos" wrote in message news:41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Simon Mourier [MS]
Il faut utiliser Convert.ChangeType. Cette fonction fait appel à l'interface IConvertible implémentée par la plupart des types de base.
Attention, toutefois, Guid n'implémente pas IConvertible ce qui est bien triste. Il faut donc quand même tester if (type is typeof(Guid)) obj = new Guid(MyString);
Simon.
"Boris Sargos" a écrit dans le message de news: 41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Il faut utiliser Convert.ChangeType. Cette fonction fait appel à l'interface
IConvertible implémentée par la plupart des types de base.
Attention, toutefois, Guid n'implémente pas IConvertible ce qui est bien
triste. Il faut donc quand même tester if (type is typeof(Guid)) obj = new
Guid(MyString);
Simon.
"Boris Sargos" <bsargos@wanadoo.fr> a écrit dans le message de news:
41fb7b60$0$10489$8fcfb975@news.wanadoo.fr...
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait
son Type qu'à l'exécution.
Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj;
if(type is typeof(int)) obj=int.Parse(MyString);
if(type is typeof(double)) obj=double.Parse(MyString);
...
if(type is typeof(long)) obj=long.Parse(MyString);
return obj;
}
Il faut utiliser Convert.ChangeType. Cette fonction fait appel à l'interface IConvertible implémentée par la plupart des types de base.
Attention, toutefois, Guid n'implémente pas IConvertible ce qui est bien triste. Il faut donc quand même tester if (type is typeof(Guid)) obj = new Guid(MyString);
Simon.
"Boris Sargos" a écrit dans le message de news: 41fb7b60$0$10489$
Bonjour à tous,
je me demande s'il est possible de "caster" un String quand on ne connait son Type qu'à l'exécution. Ce serait pour éviter ce genre d'écriture :
object Cast(string MyString, Type MyType) { object obj; if(type is typeof(int)) obj=int.Parse(MyString); if(type is typeof(double)) obj=double.Parse(MyString); ... if(type is typeof(long)) obj=long.Parse(MyString); return obj; }
Merci et bon week-end, Boris.
Boris Sargos
Paul Bacelar a écrit :
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Paul Bacelar a écrit :
Je pense qu'il vous faut un peu de recul car votre problème vient d'une
erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une
string et que vous ne pouvez pas précisément connaître la classe dont elle
est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont
issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier
texte, les données sont rangées par colonnes ordonnées dont le premier
élément (ou header) me donne le type de données correspondant à tous les
autres éléments de cette colonne. En fait cela doit fonctionner (je ne
m'y connais pas trop) comme un fichier de base de données, ou mieux, un
variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis
curieux de savoir comment faire ...
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Boris Sargos
Paul Bacelar a écrit :
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Paul Bacelar a écrit :
Je pense qu'il vous faut un peu de recul car votre problème vient d'une
erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une
string et que vous ne pouvez pas précisément connaître la classe dont elle
est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont
issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier
texte, les données sont rangées par colonnes ordonnées dont le premier
élément (ou header) me donne le type de données correspondant à tous les
autres éléments de cette colonne. En fait cela doit fonctionner (je ne
m'y connais pas trop) comme un fichier de base de données, ou mieux, un
variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis
curieux de savoir comment faire ...
Je pense qu'il vous faut un peu de recul car votre problème vient d'une erreur de conception.
C'est possible.
Si, au cours de l'exécution de votre programme, vous vous retrouvez avec une string et que vous ne pouvez pas précisément connaître la classe dont elle est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Paul Bacelar
"Boris Sargos" wrote in message news:
Paul Bacelar a écrit : > Je pense qu'il vous faut un peu de recul car votre problème vient d'une > erreur de conception.
C'est possible.
> Si, au cours de l'exécution de votre programme, vous vous retrouvez avec
une
> string et que vous ne pouvez pas précisément connaître la classe dont
elle
> est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
Rien à voir.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Quel est l'objectif final de cette déserilisation?
Avez-vous jeté un oeil au concept de déserialisation.
-- Paul Bacelar
"Boris Sargos" <bsargos@wanadoo.fr> wrote in message
news:41FF6FCE.1030506@wanadoo.fr...
Paul Bacelar a écrit :
> Je pense qu'il vous faut un peu de recul car votre problème vient d'une
> erreur de conception.
C'est possible.
> Si, au cours de l'exécution de votre programme, vous vous retrouvez avec
une
> string et que vous ne pouvez pas précisément connaître la classe dont
elle
> est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont
issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier
texte, les données sont rangées par colonnes ordonnées dont le premier
élément (ou header) me donne le type de données correspondant à tous les
autres éléments de cette colonne. En fait cela doit fonctionner (je ne
m'y connais pas trop) comme un fichier de base de données, ou mieux, un
variant.
Rien à voir.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis
curieux de savoir comment faire ...
Merci Paul.
Quel est l'objectif final de cette déserilisation?
Avez-vous jeté un oeil au concept de déserialisation.
Paul Bacelar a écrit : > Je pense qu'il vous faut un peu de recul car votre problème vient d'une > erreur de conception.
C'est possible.
> Si, au cours de l'exécution de votre programme, vous vous retrouvez avec
une
> string et que vous ne pouvez pas précisément connaître la classe dont
elle
> est le fruit de la méthode ToString, c'est qu'il vous manque des info.
Oui mais là, je plaide non coupable. Les string que je récupère sont issues d'un fichier texte (dont l'auteur m'est inconnu). Dans ce fichier texte, les données sont rangées par colonnes ordonnées dont le premier élément (ou header) me donne le type de données correspondant à tous les autres éléments de cette colonne. En fait cela doit fonctionner (je ne m'y connais pas trop) comme un fichier de base de données, ou mieux, un variant.
Rien à voir.
S'agit-il toujours d'une erreur de conception ? Si oui, là, je suis curieux de savoir comment faire ...
Merci Paul.
Quel est l'objectif final de cette déserilisation?
Avez-vous jeté un oeil au concept de déserialisation.