none
System.IndexOutOfRangeException: 'Dizin, dizi sınırlarının dışındaydı.' RRS feed

  • Soru

  • Hata veren kod

    string hatasonuc = hata[1];

    Tam Hali:

                    int i = 0;
                    string satire = Form2.richTextBox1.Lines[i];
                    while (satire.Contains("hata"))
                    {

    satire = derleF.richTextBox1.Lines[i];

                        string item = Form2.richTextBox1.Lines[i].Replace(dkonum, "");
                        Regex searchTerm = new Regex(@"\((.*?)\)");
                        string satir = searchTerm.Match(item).ToString();
                        string[] hata = item.Split(':');
                        string hatasonuc = hata[1];
                        hatasonuc = hatasonuc.Replace("hata", "");
                        string hatamsonuc = hata[2];
                        dataGridView1.Rows.Add(satir, hatasonuc, hatamsonuc);
                        i++;
                    }

    richTextbox yazısı "(11) : hata 001: dosya bulunamadi"





    • Düzenleyen MP42-fix 30 Ekim 2019 Çarşamba 16:39
    30 Ekim 2019 Çarşamba 16:05

Tüm Yanıtlar

  • Bu kod söylediğiniz sekilde hata vermez. Hata veren kodda, dizinin en az 2 elemanı yok demek istiyor.

    void Main()
    {
    	string item = "(11) : hata 001: dosya bulunamadi";
    	string[] hata = item.Split(':');
    	string hatasonuc = hata[1];
    	
    	Console.WriteLine(hatasonuc);
    }
    

    Ciktisi:

     hata 001



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    30 Ekim 2019 Çarşamba 16:19
    Yanıtlayıcı
  • Pardon kodların tam halini yanlış atmışım.

    richTextbox'a kendim "(11): hata 001: dosya bulunamadi" yazıyorum ve deniyorum ama hata veriyor.

    Tam Hali:

                    int i = 0;
                    string satire = Form2.richTextBox1.Lines[i];
                    while (satire.Contains("hata"))
                    {

    satire = derleF.richTextBox1.Lines[i];

                        string item = Form2.richTextBox1.Lines[i].Replace(dkonum, "");
                        Regex searchTerm = new Regex(@"\((.*?)\)");
                        string satir = searchTerm.Match(item).ToString();
                        string[] hata = item.Split(':');
                        string hatasonuc = hata[1];
                        hatasonuc = hatasonuc.Replace("hata", "");
                        string hatamsonuc = hata[2];
                        dataGridView1.Rows.Add(satir, hatasonuc, hatamsonuc);
                        i++;
                    }







    • Düzenleyen MP42-fix 30 Ekim 2019 Çarşamba 16:38
    30 Ekim 2019 Çarşamba 16:32
  • Debuggeri kullanın. Hatayi verdigi yerde, hata dizininin en az 2 elemanı yok (baska bir deyişle item en az bir ':' içermiyor).



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.

    30 Ekim 2019 Çarşamba 16:37
    Yanıtlayıcı