Avatar billede Slettet bruger
28. december 2006 - 12:11 Der er 20 kommentarer og
2 løsninger

Hjælp begynderen med funktioner!

Hej eksperter!

Vil I hjælpe mig med en kode?
Jeg er rimelig ny til C#, så jeg kan ikke se, hvor fejlen er - så I får hele koden:

using System;
using System.Collections.Generic;
using System.Text;

namespace Drivers
{
    class Program
    {
        static void Main()
        {
            System.ConsoleKeyInfo KEY;
            Console.WriteLine("ACER ASPIRE 9410 SERIES SETUP");
            Console.SetCursorPosition(0, 3);
            Console.WriteLine("Welcome to the Acer Aspire 9410 series setup version 1.1 by Toke!");
            Console.SetCursorPosition(1, 5);
            Console.WriteLine("- Press <ENTER> to proceed.");
            Console.SetCursorPosition(1, 7);
            Console.WriteLine("- Press any other key to cancel.");
            KEY = Console.ReadKey();
            if (KEY.Key.ToString() == "Enter")
            {
                GET_DIR();
            }
        }

        static void GET_DIR()
        {
            private System.String DIR;
            Console.Clear();
            Console.WriteLine("ACER ASPIRE 9410 SERIES SETUP");
            Console.SetCursorPosition(1, 3);
            Console.WriteLine("- Enter the destination directory and press <ENTER> to copy files.");
            Console.SetCursorPosition(3, 4);
            Console.WriteLine("Destination directory:");
            Console.SetCursorPosition(26, 4);
            DIR = Console.ReadLine();
            if (DIR != "")
            {
                COPY_FILES(DIR);
            }
            else
            {
                GET_DIR();
            }
        }

        static void COPY_FILES(System.String DIR)
        {
            private System.String DIR;
            // Og så noget mere kode her...
        }
    }
}

Overstående retunerer så:

Error    1    } expected    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    27    10    Drivers
Error    2    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    29    26    Drivers
Error    3    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    30    30    Drivers
Error    4    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    31    38    Drivers
Error    5    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    32    30    Drivers
Error    6    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    33    38    Drivers
Error    7    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    34    30    Drivers
Error    8    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    35    38    Drivers
Error    9    Invalid token '=' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    36    17    Drivers
Error    10    Invalid token '(' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    36    35    Drivers
Error    11    Invalid token '!=' in class, struct, or interface member declaration    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    37    21    Drivers
Error    12    Class, struct, or interface method must have a return type    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    39    17    Drivers
Error    13    Identifier expected    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    39    31    Drivers
Error    14    A namespace does not directly contain members such as fields or methods    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    41    13    Drivers
Error    15    Expected class, delegate, enum, interface, or struct    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    47    16    Drivers
Error    16    Expected class, delegate, enum, interface, or struct    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    49    21    Drivers
Error    17    Type or namespace definition, or end-of-file expected    C:\Documents and Settings\Charlotte.TOKEN\Local Settings\Application Data\Temporary Projects\Drivers\Program.cs    51    9    Drivers

Hvad er der galt?
Avatar billede sovsekoder Nybegynder
28. december 2006 - 12:32 #1
2 fejl:
1) du kan ikke bruge keyword : "private", inde i metoder (her er variable, som default, altid private - dvs. kan kun tilgås fra metoden og ikke udefra).

2)i metoden COPY_FILES, kan du ikke definere en variabel ved navn "DIR", da denne allerede er specificeret som parameter - du kan f.eks kalde den tempDIR.
Avatar billede kalp Novice
28. december 2006 - 12:34 #2
using System;
using System.Collections.Generic;
using System.Text;

namespace Drivers
{
    class Program
    {
        static void Main()
        {
            System.ConsoleKeyInfo KEY;
            Console.WriteLine("ACER ASPIRE 9410 SERIES SETUP");
            Console.SetCursorPosition(0, 3);
            Console.WriteLine("Welcome to the Acer Aspire 9410 series setup version 1.1 by Toke!");
            Console.SetCursorPosition(1, 5);
            Console.WriteLine("- Press <ENTER> to proceed.");
            Console.SetCursorPosition(1, 7);
            Console.WriteLine("- Press any other key to cancel.");
            KEY = Console.ReadKey();
            if (KEY.Key.ToString() == "Enter")
            {
                GET_DIR();
            }
        }

        static void GET_DIR()
        {
            System.String DIR;
            Console.Clear();
            Console.WriteLine("ACER ASPIRE 9410 SERIES SETUP");
            Console.SetCursorPosition(1, 3);
            Console.WriteLine("- Enter the destination directory and press <ENTER> to copy files.");
            Console.SetCursorPosition(3, 4);
            Console.WriteLine("Destination directory:");
            Console.SetCursorPosition(26, 4);
            DIR = Console.ReadLine();
            if (DIR != "")
            {
                COPY_FILES(DIR);
            }
            else
            {
                GET_DIR();
            }
        }

        static void COPY_FILES(System.String DIR)
        {
            System.String DIR;
            // Og så noget mere kode her...
        }
    }
}
Avatar billede kalp Novice
28. december 2006 - 12:34 #3
sovsekoder >> sorry... opdaterede ikke
Avatar billede Slettet bruger
28. december 2006 - 12:45 #4
Opdagede ikke hvad? sovsekoder's svar?
Avatar billede kalp Novice
28. december 2006 - 12:46 #5
det eneste der skal ændres i min kode er denne..
     
static void COPY_FILES(System.String DIRX)
        {
            System.String DIR;
            // Og så noget mere kode her...
        }


jeg opdagede ikke at sovsekoder også havde lagt en kommentar:)
Avatar billede Slettet bruger
28. december 2006 - 12:48 #6
Nå, bare smid et svar hver - brugte kalp's kode og tilføjede sevsekoder's ændringer...
Og nu virker det!
Takker!
Avatar billede Slettet bruger
28. december 2006 - 12:48 #7
Nej, faktisk skal DIR i

static void COPY_FILES(System.String DIRX)
        {
            System.String DIR;
            // Og så noget mere kode her...
        }

slet ikke bruges... Jeg glemte bare at tænke :S

Takker alligevel ;)
Avatar billede Slettet bruger
28. december 2006 - 12:50 #8
Og nu når vi er i gang:
Hvordan kopieres filer med C#?
Er der en færdig funktionspakke til det?
Avatar billede kalp Novice
28. december 2006 - 12:50 #9
ingen årsag;)
Avatar billede Slettet bruger
28. december 2006 - 12:53 #10
Kan jeg få dig til at svare på hvordan filer kopieres med C#?
Avatar billede kalp Novice
28. december 2006 - 12:54 #11
hvad tænker du på?
f.eks

c:\enfil.exe

til

c:\CopyAfenFil.exe

?
Avatar billede kalp Novice
28. december 2006 - 12:56 #12
Avatar billede arne_v Ekspert
28. december 2006 - 13:44 #13
Avatar billede Slettet bruger
29. december 2006 - 00:30 #14
Okaj, kikker lige...
Avatar billede Slettet bruger
29. december 2006 - 00:31 #15
Faktisk hele directories...
Avatar billede Slettet bruger
29. december 2006 - 00:32 #16
Avatar billede Slettet bruger
29. december 2006 - 00:34 #17
http://www.java2s.com/Code/CSharp/File-Stream/Copyafile.htm er lidt mere avanceret... ikke hvad jeg skal bruge i dette tilfælde.
Men tak alligevel...

Bare smid svar, alle!
Avatar billede Slettet bruger
29. december 2006 - 00:34 #18
Nå, ja, og er der en metode som File.Copy(s,s,b) til directories?
Avatar billede arne_v Ekspert
29. december 2006 - 01:04 #19
der bliver du nok nødt til at lave en lille rekursion

fra lageret:

    private void XCopy(string dir1, string dir2)
    {
        string[] files = Directory.GetFiles(dir1);
        foreach (string f in files) {
            File.Copy(f, dir2 + f.Substring(dir1.Length), true);
        }
        string[] dirs = Directory.GetDirectories(dir1);
        foreach (string d in dirs) {
            XCopy(d, dir2 + d.Substring(dir1.Length));
        }
    }
Avatar billede arne_v Ekspert
29. december 2006 - 01:04 #20
og et svar
Avatar billede Slettet bruger
29. december 2006 - 08:55 #21
Danke schön!
Avatar billede Slettet bruger
29. december 2006 - 08:55 #22
Og synd for sovsen :S
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester