begin process at 2012 02 11 04:34:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Algorithme

 > 

Compression, Split et Cryptage

 > 

PB avec subsstring


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

PB avec subsstring

vendredi 19 juin 2009 à 09:39:21 | PB avec subsstring

avatar69

Bonjour,
je suis programmeur en PHP, PERL et je dois modifier un prog fait par un collegue en C# et la ca me fait tourner la tete !!!!!

J'ai la fonction substrings qui ne marche pas ca me fait une erreur suivante

Erreur 1 'object' ne contient pas une définition pour 'Substring' et aucune méthode d'extension 'Substring' acceptant un premier argument de type 'object' n'a été trouvée (une directive using ou une référence d'assembly est-elle manquante ?) C:\Documents and Settings\Administrateur\Mes documents\Visual Studio 2008\Projects\FeelImpClients\FeelImpClients\Form1.cs 63 39 FeelImpClients

J'ai besoin de faire du LEFT et du RIGHT sinon, quel est la meilleur solution ?
j'ai pas l'impression qu'on puisse faire du RIGHT avec substring mais que du LEFT ?

Voici mon script

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.IO;

namespace FeelImpClients
{
    public partial class Form1 : Form
    {
        string strAppPath = Directory.GetCurrentDirectory();
       
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
          
        }

        private void button2_Click(object sender, EventArgs e)
        {

            string sqlstr;
            SqlDataReader rdr;
            // Ouverture de la connection SQL

            //string connectString = "database=FEELMUSIC;server=192.168.150.2;User ID=SageUpdate;pwd=bigchief";
            string connectString = "database=DISTRINEP;server=192.168.100.118;User ID=<Administrateur>;pwd=jpac";
            // Objet connection
            SqlConnection connection = new SqlConnection(connectString);
            // Ouverture
            connection.Open();


                sqlstr = "select * from F_COMPTET";
                SqlCommand oCmd2 = new SqlCommand(sqlstr, connection);
                rdr = oCmd2.ExecuteReader();

                Console.WriteLine("Répertoire d'exécution : " + Environment.CurrentDirectory);
                FileStream fchSortie = new FileStream("EXPORT CLIENT VB.TXT", FileMode.Create);
                StreamWriter flux = new StreamWriter(fchSortie, ASCIIEncoding.Default);
                Object[] row = null;
               
                while (rdr.Read())
                {
                    row = new Object[rdr.FieldCount];
                    rdr.GetValues(row);
                    row[96] = "             " + row[96];
                    row[96] = row[96].Substring(2, 5);
                    flux.Write(row[96]);
                    flux.Write(";");
                    flux.WriteLine();
                    // Console.WriteLine("ca avance !!!");
                }

                rdr.Close();

        }
   }
}

Merci pour votre aide
Thierry

vendredi 19 juin 2009 à 09:58:13 | Re : PB avec subsstring

ed73

Réponse acceptée !

Bonjour,

Substring est une méthode de String donc row[96] étant de type Object il est normal que le compilateur te donne une erreur quand tu fais row[96].substring(2,5)

Left : str.Substring(0,5); // 5 premiers caractères
Right : str.Substring(str.Length - 5,5); // 5 dernier caractères

 

vendredi 19 juin 2009 à 10:20:07 | Re : PB avec subsstring

krimog

Administrateur CodeS-SourceS
Réponse acceptée !
L'erreur me semble parler d'elle-même. Comme le dit ed73, la méthode Substring n'existe pas pour un object (et encore heureux, car toute classe hérite de object, et j'imagine mal ce que serait censé faire un code du genre "maVoiture.Substring()").

De plus, quand Intellisense (le système de saisie semi-automatique de Visual Studio) te propose une liste qui ne contient pas ce que tu cherches, tu as 99% de chances que ce ne soit pas valide de l'écrire.

Substring n'existe que dans la classe string. Donc il faut d'abord récupérer un string.

3 méthodes :
Si c'est un objet non null de n'importe quelle classe, tu peux faire monObjet.ToString();
Si c'est réellement un string, tu peux faire (string)monObjet. Si monObjet n'est pas un string => Exception
Tu peux également faire monObjet as string. Si monObjet n'est pas un string, ça renverra null.

Donc dans ton code : row[96].ToString().Substring(2, 5);

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
vendredi 19 juin 2009 à 15:25:39 | Re : PB avec subsstring

avatar69

Merci pour vos réponses ca ma permi d'avancé un peu.
Mais la logique est completement differente de ce que j'ai l'habitude de f aire..... je m'en voie un peu pour un script qui aurais du me prendre meme pas 10 minutes..

Merci
vendredi 19 juin 2009 à 15:45:21 | Re : PB avec subsstring

krimog

Administrateur CodeS-SourceS
Logique complètement différente ??

Tu fais du PHP non ?
$monObjet.MaMethodeQuiNExistePasPourLaClasseDeMonObjet();
ça te génère pas une erreur (par hasard) ?

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
vendredi 19 juin 2009 à 19:13:27 | Re : PB avec subsstring

avatar69

Non ca j'ai jamais fait en PHP, je programme en PHP3 ca sa doit etre du PHP5

++

Thierry


Cette discussion est classée dans : system, using, row, object, rdr


Répondre à ce message

Sujets en rapport avec ce message

acces a un espace membre par verification bd access [ par angelz ] bonjour a tous,je debute en c# et je dois avouer que g un pe de mal lolen fait mon beau pere (fait chier celui la lol) m a demander de lui faire un pr Probleme OleDbDataReader [ par bibibiba ] Bonjour,je suis novice en C# et j'ai une classe BaseAccess qui doit permettre de lire les données d'un utilisateur contenues dans une base,pour ce fai Fermer la fenetre de sortie ou fermer l'application [ par avatar69 ] Bonjour,j'ai reussi (grace a l'aide de certain ici) a faire mon script et il fonctionne !!!Juste une derniere chose ;)Comment fait t-on pour fermer un PB sur requete Select [ par avatar69 ] Bonjour, j'ai un petit souci avec une requete a ce niveau la a mon avis "where AR_Ref = row[20]" je pense qu'il ne comprend pas le = row[20] mais je v Object reference not set to an instance of an object [ par benabdessamed ] bonjour j'ai message d'erreur suivant :[color=red] Object reference not set to an instance of an object[/color] lorsue je veut modifie un composant d Plantage designer suite à une modification sur le formulaire [ par Mickael1984 ] Bonjour, je suis un peu perdu sur un développement que je fais actuellement je mets le code, si quelqu'un a déjà eu ce genre de problème. Mon problè Tableau de classe en C# [ par djibalinux ] Bonjour à tous, ci-joint un code d'éxercices (pour mes entrainements). Le but est de créer un tableau d'objets saisis par l'utilisateur. Premiere cl Erreur Inconnue [ par MadFox972 ] Bonjour, Je ne sais pas si je suis au bon endroit mais je tentes quand même Depuis quelques jours, je code un petit programme qui copie et range des f inscription en C# dans serveur [ par kaoutar90 ] SVP je veux savoir comment faire une inscription en C# dans un serveur sachant que le traitement dans le client est comme suit : using System; using S


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 5,866 sec (4)

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