Avatar billede glenn007 Nybegynder
08. januar 2009 - 19:36 Der er 5 kommentarer og
1 løsning

hvad har jeg gkort galt med min text søger.

hejsa, har lavet dette for at søge efter en forekomst af et bestemt ord i en linie. men det virker bare ikke og jeg kan ikke se hvordan jeg kan gøre det anderledes. den hænger programmet som om den kører uendeligt.

FileStream stream = File.OpenRead(@"\test.txt");
            StreamReader sr = new StreamReader(stream);
            String woord;
            string linieindhold[];
            int fundet = 0;
            woord = sr.ReadLine();
            while (woord != null)
            {
             
            resultsTextBox.Text = resultsTextBox.Text + woord;

                for (int i = 0; i < woord.Length - 1; i++)
                {
                    if (woord.Substring(0, i).Equals(handcard3))
                    {
                        fundet++;
                        linieindhold[]++
                    }
                }

                //woord = sr.ReadLine();
            }
            sr.Close();
            resultsTextBox.Text += "FUNDET LINIER" + fundet ;
Avatar billede glenn007 Nybegynder
08. januar 2009 - 19:40 #1
selve formålet med den er at søge min tekstfil igennem for linier med netop den forekomst og smide indholdet af linierne in i et array jeg så kan søge bruge til at gemme i en ny tekstfil
Avatar billede Syska Mester
08. januar 2009 - 19:43 #2
string linieindhold[]; // bad syntax end hvad du prøver på her ...

Udkommnetere i koden her:
FileStream stream = File.OpenRead(@"\test.txt");
            StreamReader sr = new StreamReader(stream);
            String woord;
            // string linieindhold[];
            int fundet = 0;
           
           
            while (!sr.EndOfStream)
            {
            woord = sr.ReadLine();
            resultsTextBox.Text = resultsTextBox.Text + woord;

                for (int i = 0; i < woord.Length - 1; i++)
                {
                    if (woord.Substring(0, i).Equals(handcard3))
                    {
                        fundet++;
                        // linieindhold[]++
                    }
                }

                //woord = sr.ReadLine();
            }
            sr.Close();
            resultsTextBox.Text += "FUNDET LINIER" + fundet ;
Avatar billede Syska Mester
08. januar 2009 - 19:45 #3
woord.Contains("supermand")

Returnere true hvis den indeholder "supermand"
Avatar billede glenn007 Nybegynder
08. januar 2009 - 20:06 #4
ok, nu kører koden uden at knække sammen *G*

men der er noget jeg har misset.

har nu gjort således og den skriver linier s_9 bummelum  9 gange ud og den eksistere kun en gang



            while (!sr.EndOfStream)
            {
                woord = sr.ReadLine();
             

                for (int i = 0; i < woord.Length - 1; i++)
                {
                    if (woord.Contains("s_9"))
                    {
                        resultsTextBox.Text = resultsTextBox.Text + woord;
                        //fundet++;
                     
                    }
                }

                //woord = sr.ReadLine();
            }
            sr.Close();
            resultsTextBox.Text += "FUNDET LINIER" + fundet;
Avatar billede Syska Mester
08. januar 2009 - 21:18 #5
ja ....

din for loop forstår jeg ik' ....

Fjern den ... så kommer der kun en gang ... kan ikke se ideen med den.
Avatar billede glenn007 Nybegynder
09. januar 2009 - 15:56 #6
den er i vinkel tak skal du have

jeg ved heller ikke lige hvad min ide var med loopet, men er astadigt ret ny i c# så man er jo lidt forvirret i ny og næ *G*
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