IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

code á completer


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2014
    Messages : 146
    Par défaut code á completer
    Salut,
    j´ai ecrit le code suivant et j aimerais svp que quelqu´un m´aide a completer.
    j ai 3 functions avec des parametres . j´aimerais recuperer les informations donner dans les functions et les attribuer au string Line de la fonction Main. de sorte qu´a la fin du programme les informations soient enregistrées dans mon fichier comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    100;83;4027671000005;4024391000001;201524323;"Soft"
    120;83;4027671000005;4024391000001;= 2015 - 24323;"ADR";
    300;83;4027671000005;4024391000001;2015 - 24323;"Blau";
    voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    using System.Diagnostics;
    using System.Reflection;
    using System.Data.SqlClient;
     
    namespace test
    {
        class Textdatei
        {
            public static string KopfSegment (int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer, DateTime Lieferantendatum, string Käufer)
            {
                int Seg;
                int Dok;
                long Lie;
                long RechEmpf;
                int RechNum;
                DateTime LfDatum;
                String Kf;
                Seg = segmentkennzeichner;
                Dok = DokumentArt;
                Lie = Lieferant;
                RechEmpf = RechnungEmpfänger;
                RechNum = Rechnungsnummer;
                LfDatum = Lieferantendatum;
                Kf = Käufer;
     
                segmentkennzeichner = 100;
                DokumentArt = 83;
                Lieferant = 4027671000005;
                RechnungEmpfänger = 4024391000001;
                Rechnungsnummer = 2015 - 24323;
                //Lieferantendatum = 03.08.2015;
                Käufer = "Soft";
                return KopfSegment;
            }
     
            public static string Adressegment(int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer,string  Adressart, double Postleitzahl)
            {
     
                segmentkennzeichner = 120;
                DokumentArt = 83;
                Lieferant = 4027671000005;
                RechnungEmpfänger = 4024391000001;
                Rechnungsnummer = 2015 - 24323;
                //Lieferantendatum = 03.08.2015;
                Adressart = "ADR";
                return Adressegment;
            }
     
            public static string Positionsegment(int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer, string Textart, int Textschlüssel)
            {
     
                segmentkennzeichner = 300;
                DokumentArt = 83;
                Lieferant = 4027671000005;
                RechnungEmpfänger = 4024391000001;
                Rechnungsnummer = 2015 - 24323;
                Textart = "Blau";
                return Positionsegment;
            }
     
     
            static void Main(string[] args)
            {
                string Textdatei = @"C:\Projekte\Ascii_Schnittstelle\test.txt";
     
                string line = ; // information de Kopfsegment, positionsegment et addresssegment  attribuer
                File.WriteAllLines(Textdatei,Line, Encoding.ASCII);
     
     
     
            }
        }
    }
    merci d avance

  2. #2
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 93
    Par défaut
    A quoi bon mettre des paramètres si tu leur donne une valeur fixe dans la fonction ??
    Si j'ai bien compris ton soucis tu dois simplement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    public static string Positionsegment(int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer, string Textart, int Textschlüssel)
            {
                //d'ailleurs int Textschlüssel tu ne t'en sers meme pas ??
                return segmentkennzeichner .String() + ";" +DokumentArt.ToString() +";" +Lieferant.ToString() +";"+ RechnungEmpfänger.ToString()  +";" +Rechnungsnummer.ToString() +";" Textart  +";";
            }
    Et dans ton main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    string lineSegment = Positionsegment(300,83, 4027671000005, 4024391000001, 2015 - 24323, "Blau", 0);

  3. #3
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2014
    Messages : 146
    Par défaut
    Bonjour,
    merci de votre reponse. les parametres n auront pas une valeur fixe. les valuers fixe etaient juste un test.
    au ce niveau du code j´obtiens l erreur suivante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      return Positionsegment.String() + ";" +DokumentArt.ToString() +";" +Lieferant.ToString() +";"+ RechnungEmpfänger.ToString()  +";" +Rechnungsnummer.ToString() +";" +Textart  +";";
    l erreur 1 : Ascii_Schnittstelle.Textdatei.Positionsegment (int, int, long, long, int, string, int)" est une "méthode" et le contexte spécifié n´est pas valide.
    et dans la fonction Main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    string Textdatei = @"C:\Projekte\Ascii_Schnittstelle\test.txt";   
      string lineSegment = Positionsegment(300, 83, 4027671000005, 4024391000001, 2015 - 24323, "Blau", 0);
                File.WriteAllLines(Textdatei,lineSegment, Encoding.ASCII); // erreur au niveau de WriteAllLines 
    erreur 2: Le meilleur match pour les System.IO.File.WriteAllLines surchargés (string, System.Collections.Generic.IEnumerable <string>, System.Text.Encoding) méthode a quelques arguments invalides.
    erreur 3: Argument 2: Vous ne pouvez pas convertir de "string" dans "System.Collections.Generic.IEnumerable <string>" .
    comment corriger ces erreurs
    merci

  4. #4
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    la réponse est dans le message d'erreur : File.WriteAllLines attend un IEnumerable de <string> en deuxième paramètre, pas un string seul.
    Tu peux donc lui passer un tableau de string ou une collection de string. Petit exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    List<string> lines = new List<string>();
    lines.Add(KopfSegment(/* les param qui vont bien */));
    lines.Add(Adressegment(/* les param qui vont bien */));
    lines.Add(Positionsegment(/* les param qui vont bien */));
    File.WrtieAllLines(@"C:\folder\file.txt", lines, Encoding.ASCII);
    Maintenant c'est pas la méthode que j'aurais choisie par défaut, à voir dans ton contexte.

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 93

  6. #6
    Membre très actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2014
    Messages : 146
    Par défaut
    Bonjour,
    merci de votre reponse. j ai modifié le programme comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    namespace Ascii_Schnittstelle
    {
        class Textdatei
        {
            public static string KopfSegment (int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer, int Lieferantendatum, string Käufer)
            {
      return string.Format("{0};{1};{2};{3};{4};{5};{6};", segmentkennzeichner, DokumentArt, Lieferant, RechnungEmpfänger, Rechnungsnummer, Lieferantendatum, Käufer);
              }
       public static string Adressegment(int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer,string  Adressart, double Postleitzahl)
            {
          return string.Format("{0};{1};{2};{3};{4};{5};{6};", segmentkennzeichner, DokumentArt, Lieferant, RechnungEmpfänger, Rechnungsnummer, Adressart, Postleitzahl);
     
            }
      public static string Positionsegment(int segmentkennzeichner, int DokumentArt, long Lieferant, long RechnungEmpfänger, int Rechnungsnummer, string Textart, int Textschluessel)
            {
                return string.Format("{0};{1};{2};{3};{4};{5};{6};", segmentkennzeichner, DokumentArt,  Lieferant, RechnungEmpfänger, Rechnungsnummer, Textart == null ? string.Empty : Textart, Textschluessel);
         }
     
     
            static void Main(string[] args)
            {
                string Textdatei = @"C:\Projekte\Ascii_Schnittstelle\test2.txt";
                if (!File.Exists(Textdatei))
                {
                    System.IO.Directory.CreateDirectory(Textdatei);
                }
     
                if (File.Exists(Textdatei))
                {
                    File.WriteAllText(Textdatei, string.Empty);
                }
     
                List<string> lines = new List<string>();
                lines.Add(KopfSegment(100,83,4027671000005,4024391000001,24323,23,"Soft"));
                lines.Add(Adressegment(120, 83, 4027671000005, 4024391000001, 2015 - 24323, "ADR",456));
                lines.Add(Positionsegment(300, 83, 4027671000005, 4024391000001, 2015 - 24323, "blau", 0));
                File.WriteAllLines(@"Textdatei", lines, Encoding.ASCII);
     
            }
        }
    }
    je ne recois aucune faute. mais mon fichier dans le dossier est vide. les lignes n ont pas ete enregistrées.
    pourquoi les lignes ne sont pas enregistrées dans le fichier?
    merci

  7. #7
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Re,

    quelques soucis dans ton code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                if (!File.Exists(Textdatei))
                {
                    System.IO.Directory.CreateDirectory(Textdatei);
                }
    Cette instruction va te créer un répertoire qui s'appelle "C:\Projekte\Ascii_Schnittstelle\test2.txt", or ce que tu veux (je suppose) c'est vérifier l'existence/créer un répertoire qui s'appelle "C:\Projekte\Ascii_Schnittstelle" (et pour tester c'est Directory.Exists au passage).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                if (File.Exists(Textdatei))
                {
                    File.WriteAllText(Textdatei, string.Empty);
                }
    Ici l'instruction est un peu inutile : quoi qu'il arrive WriteAllLines écrira par-dessus le contenu existant, pas besoin de remettre à vide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File.WriteAllLines(@"Textdatei", lines, Encoding.ASCII);
    Enfin, là t'as mis le nom de ta variable entre quote, du coup ça a dû écrire tes lignes dans un fichier qui s'appelle "Textdatei" dans le répertoire d'exécution de ton programme.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. cherche EDI qui supporte la code completion
    Par adel25 dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 20/06/2008, 01h32
  2. StructuredTextEditor code completion
    Par *alexandre* dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 07/03/2008, 16h53
  3. JCreator 4 possède "code completion" ?
    Par mohamed amine dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 1
    Dernier message: 15/11/2006, 21h40
  4. Affichage du code complet du programme
    Par felina dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 16/06/2006, 18h27
  5. [Plugin][phpeclipse] code completion
    Par adel25 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 11/08/2005, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo