System.FormatException: Le format de la chaîne d'entrée est incorrect. [Résolu]

cs_xakal 30 Messages postés jeudi 4 mars 2004Date d'inscription 7 novembre 2005 Dernière intervention - 18 oct. 2005 à 17:47 - Dernière réponse : RV2931 185 Messages postés samedi 21 mai 2005Date d'inscription 16 juillet 2016 Dernière intervention
- 17 avril 2008 à 17:10
J'ai un probleme avec les applications C# .NET que je cree ...
Ce probleme ne survient que qd j'essaye de lancer l'appli sur une autre machine que la mienne.
chez moi il n'y a aucun problemes.
Une erreur est soulevee au moment ou je lis un fichier .txt je decoupe les phrases en tokens que je transforme en double.

Je n'arrive pas a trouver d'ou vient le probleme.
Les machines sont toutes equipées de XP j'ai telecharge le dotnetfx chez MS ou par windows update.
Meme apres les mises a jour le probleme persiste.
Y a t-il une version speciale developpeur de .NET ?

Si qqn a une idee sur ce probleme ou a eu le meme probleme, je suis tout ouï.

Xakal.

Consultez la fin de ce message pour plus de détails sur l'appel du débogage


juste-à-temps (JIT) à la place de cette boîte de dialogue.


************** Texte de l'exception **************


System.FormatException: Le format de la chaîne d'entrée est incorrect.


at System.Number.ParseDouble(String s, NumberStyles style, NumberFormatInfo info)


at System.Double.Parse(String s, NumberStyles style, IFormatProvider provider)


at System.Double.Parse(String s)


at WindowsApplication3.Form1.Apply_Click(Object sender, EventArgs e)


at System.Windows.Forms.Control.OnClick(EventArgs e)


at System.Windows.Forms.Button.OnClick(EventArgs e)


at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)


at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)


at System.Windows.Forms.Control.WndProc(Message& m)


at System.Windows.Forms.ButtonBase.WndProc(Message& m)


at System.Windows.Forms.Button.WndProc(Message& m)


at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)


at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)


at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Assemblys chargés **************


mscorlib


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.2032


CodeBase : file:///c:/winnt/microsoft.net/framework/v1.1.4322/mscorlib.dll


----------------------------------------


WindowsApplication3


Version de l'assembly : 1.0.2088.18440


Version Win32 : 1.0.2088.18440


CodeBase : file:///C:/Program%20Files/SPOT_RB/WindowsApplication3.exe


----------------------------------------


System.Windows.Forms


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.2032


CodeBase : file:///c:/winnt/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll


----------------------------------------


System


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.2032


CodeBase : file:///c:/winnt/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll


----------------------------------------


System.Drawing


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.2032


CodeBase : file:///c:/winnt/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll


----------------------------------------


AxInterop.CortonaVRMLClientLibrary


Version de l'assembly : 1.0.0.0


Version Win32 : 1.0.0.0


CodeBase : file:///C:/Program%20Files/SPOT_RB/AxInterop.CortonaVRMLClientLibrary.DLL


----------------------------------------


Interop.CortonaVRMLClientLibrary


Version de l'assembly : 1.0.0.0


Version Win32 : 1.0.0.0


CodeBase : file:///C:/Program%20Files/SPOT_RB/Interop.CortonaVRMLClientLibrary.DLL


----------------------------------------


System.resources


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.573


CodeBase : file:///c:/winnt/assembly/gac/system.resources/1.0.5000.0_fr_b77a5c561934e089/system.resources.dll


----------------------------------------


Accessibility


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.573


CodeBase : file:///c:/winnt/assembly/gac/accessibility/1.0.5000.0__b03f5f7f11d50a3a/accessibility.dll


----------------------------------------


ZedGraph


Version de l'assembly : 1.0.1812.29779


Version Win32 : 1.0.1812.29779


CodeBase : file:///C:/Program%20Files/SPOT_RB/ZedGraph.DLL


----------------------------------------


mscorlib.resources


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.573


CodeBase : file:///c:/winnt/assembly/gac/mscorlib.resources/1.0.5000.0_fr_b77a5c561934e089/mscorlib.resources.dll


----------------------------------------


SYSTEM.WINDOWS.FORMS.resources


Version de l'assembly : 1.0.5000.0


Version Win32 : 1.1.4322.573


CodeBase : file:///c:/winnt/assembly/gac/system.windows.forms.resources/1.0.5000.0_fr_b77a5c561934e089/system.windows.forms.resources.dll


----------------------------------------


************** Débogage JIT **************


Pour activer le débogage juste-à-temps (JIT), le fichier de configuration pour cette


application ou cet ordinateur (machine.config) doit avoir la valeur


jitDebugging définie dans la section system.windows.forms.


L'application doit également être compilée avec le débogage


activé.


Par exemple :


<configuration>


<system.windows.forms jitDebugging="true" />


</configuration>


Lorsque le débogage juste-à-temps est activé, les exceptions non gérées


seront envoyées au débogueur JIT inscrit sur l'ordinateur


plutôt que d'être gérées par cette boîte de dialogue.
Afficher la suite 

11 réponses

Répondre au sujet
cs_xakal 30 Messages postés jeudi 4 mars 2004Date d'inscription 7 novembre 2005 Dernière intervention - 19 oct. 2005 à 10:51
+3
Utile
using System.Globalization;


public
static
string Separateur = CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator;

Merci BCP ca marche nickel maintenant.

Une belle frayeur m'a traverse hier et aujourd'hui tout est revenu a la normale.
Merci csharpfr.com et ces utilisateurs.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_xakal
Lutinore 3248 Messages postés lundi 25 avril 2005Date d'inscription 27 octobre 2012 Dernière intervention - 18 oct. 2005 à 18:14
0
Utile
Salut, comme ça au hazard sans étudier le truc je dirais un problème de culture, ( le point et la virgule )
Commenter la réponse de Lutinore
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 19 oct. 2005 à 08:42
0
Utile
ouaip... comme lutinore.

tes machines ont des paramètres régionaux différents, l'un utilise la virgule comme séparateur décimal et l'autre le point.

Sébastien FERRAND
[MVP C#]
Commenter la réponse de sebmafate
cs_xakal 30 Messages postés jeudi 4 mars 2004Date d'inscription 7 novembre 2005 Dernière intervention - 19 oct. 2005 à 08:48
0
Utile
J'ai bien pense au pb culturel des americains ;-}
Je transforme les bien les "." en ",".

Je pense que c'est plutot un probleme de plugin.
Pour une meme version on a un nombre de fichiers differents.

Xakal.
Commenter la réponse de cs_xakal
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 19 oct. 2005 à 08:54
0
Utile
de plugin ? quels plugins ?

Sébastien FERRAND
[MVP C#]
Commenter la réponse de sebmafate
cs_xakal 30 Messages postés jeudi 4 mars 2004Date d'inscription 7 novembre 2005 Dernière intervention - 19 oct. 2005 à 09:19
0
Utile
MEA CULPA MEA MAXIMA CULPA.

Il sagit bien d'un probleme d'options regionales.
Tout en etant francais tous les windows ne prennent pas forcement les memes parametres par defaut et surtout C# est sensible a ces derniers !!!

Merci de votre coup de main j'ai cru que j'allais devenir fou !!!

Par contre se pose a moi un autre probleme, comment je peux aller voir quel est le separateur de nombre pour que mes Parse se passent au mieux.

Par plugin je voulais dire framework .NET.
Je ne comprends pas pour une meme version je n'ai pas le meme nombre de fichiers que sur les autres PC.

Xakal.
Commenter la réponse de cs_xakal
Lutinore 3248 Messages postés lundi 25 avril 2005Date d'inscription 27 octobre 2012 Dernière intervention - 19 oct. 2005 à 10:13
0
Utile
CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator
Commenter la réponse de Lutinore
struk1981 9 Messages postés jeudi 21 août 2003Date d'inscription 19 mai 2006 Dernière intervention - 2 mai 2006 à 18:10
0
Utile
En fait, j'ai exactement se probleme là!
J'ecrit pourtant

using System.Globalization;

public static string Separateur = CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator;

Mais le probleme persiste! C'était exactement le même cas car c'etait egalement lors de la lecture dans un fichier txt pour avoir des valeur en double.
Pouriez vous m'expliquer un peu plus precisement ce que je peu faire ou alors me dire si il y a une autre solution???
Merci beaucoup
Commenter la réponse de struk1981
struk1981 9 Messages postés jeudi 21 août 2003Date d'inscription 19 mai 2006 Dernière intervention - 2 mai 2006 à 18:17
0
Utile
De fait, quand je met comme valeur "15,89" ca fonctionne mais aps quand c'est "15.89"
Est ce qqch a changer dans windows ou dans la config de visual c#?
Commenter la réponse de struk1981
cs_xakal 30 Messages postés jeudi 4 mars 2004Date d'inscription 7 novembre 2005 Dernière intervention - 9 mai 2006 à 15:49
0
Utile
essaye ca.

Rc =
double.Parse(RC.Text.Replace(",",Principale.Separateur).Replace(".",Principale.Separateur)) / Form1.MPAENPSI;

Tu fais 2 fois le travail mais tu es sur de ton coup.
Tu change le point et la virgule en separateur.
Comme ca tu es sur de ton coup pour les ricains ou les gens normaux.

Xakal.
Commenter la réponse de cs_xakal
RV2931 185 Messages postés samedi 21 mai 2005Date d'inscription 16 juillet 2016 Dernière intervention - 17 avril 2008 à 17:10
0
Utile
Salut,

j'ai exactement le même problème, pourtant, j'ai vérifier les paramètres régionaux et ils semblent être identiques.
Je n'ai pas bcp plus d'info, juste le message "System.FormatException: Le format de la chaîne d'entrée est incorrect.
"
C'est le débogueur de VS2003 qui se lance car je l'ai sur mes 2 machines, quand je le lance sur une machine sans débogueur, j'ai un gros message d'erreur avec ID(Thread) 0xpatati patata.

Le truc c'est que je n'utilise que des System.Int16 ou UInt16 dans mon prog, les valeurs stockées dans les fichiers ne contiennent donc aucune virgule ou point...???

Comment fait-on pour avoir toutes les infos que [auteur/XAKAL/240399.aspx xakal] à fourni dans son premier message ?

Si quelqu'un a une idée ?

Merci

RV

L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"
Commenter la réponse de RV2931

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.