当StreamReader(ReadLine)的长度超过256时,如何从中生成子字符串。c#

当StreamReader(ReadLine)的长度超过256时,如何从中生成子字符串。c#,c#,substring,streamreader,C#,Substring,Streamreader,我在C#中使用此函数: 为了能够加载更长的文本 但当行长度超过256个字符(大于字符串)时,Substring-函数有问题。我怎样才能解决这个问题 我读取的行比字符串的最大值长。未处理System.ArgumentOutOfRangeException Message=索引和长度必须引用字符串中的位置。 参数名称:长度 代码: 问题出现在最后一行。我解决了它。这是一个愚蠢的错误: int u = sLinia.IndexOf(",", t + 1); string s14 = sLinia.Su

我在C#中使用此函数:

为了能够加载更长的文本

但当行长度超过256个字符(大于字符串)时,
Substring
-函数有问题。我怎样才能解决这个问题


我读取的行比字符串的最大值长。

未处理System.ArgumentOutOfRangeException Message=索引和长度必须引用字符串中的位置。 参数名称:长度

代码:


问题出现在最后一行。

我解决了它。这是一个愚蠢的错误:

int u = sLinia.IndexOf(",", t + 1);
string s14 = sLinia.Substring(t + 1, u - t - 1); // there should be "t+1" not "u+1" 

糟糕的是,我想到了字符串的范围。

这是什么语言?请回答问题并添加适用的标签。这不是功能。那是一句台词。NET中对256个字符的字符串没有固有的限制,因此您需要向我们提供有关您所做工作的更多信息—这里的总体目标是什么,以及它与您向我们展示的行之间的关系如何?
        srPlik = new StreamReader(sFel, System.Text.Encoding.ASCII, false, 512); //dluzszy ciag znakow niz string czyli 256
        do
        {
            sLinia = srPlik.ReadLine();
            i=sLinia.IndexOf(",",13);
            string kwota  = sLinia.Substring( 13,i-13);

            dKwota_3 = Convert.ToDecimal(kwota)/100; 
            this.tb3.Text = dKwota_3.ToString();

            int j = sLinia.IndexOf(",", i+1);
            string  nr_rozl_odd_nad  = sLinia.Substring( i+1,j-i-1);


                 int k=sLinia.IndexOf(",", j+1);
                 string nr_rozl_odd_odb = sLinia.Substring(j + 1, k - j - 1);


                 int l = sLinia.IndexOf(",", k + 1);
                 string rach_klienta_nadawcy = sLinia.Substring(k + 1, l - k - 1);

                 int m = sLinia.IndexOf(",", l + 1);
                 string rach_klienta_adresata = sLinia.Substring(l + 1, m - l - 1);


                 int n = sLinia.IndexOf(",", m + 1);
                 string nazwaiadres = sLinia.Substring(m + 1, n - m - 1);


                 int o = sLinia.IndexOf(",", n + 1);
                 string s9 = sLinia.Substring(n + 1, o - n - 1);

                 int p = sLinia.IndexOf(",", o + 1);
                 string s10 = sLinia.Substring(o + 1, p - o - 1);

                 int r = sLinia.IndexOf(",", p + 1);
                 string s11 = sLinia.Substring(p + 1, r - p - 1);


                int koniec_tytulu = sLinia.IndexOf('"',r+2); //szukaj cudzysłowia czyli końca tytułu
                string s12 = sLinia.Substring(r + 1, koniec_tytulu - r -2-1);


                 int t = sLinia.IndexOf(",", koniec_tytulu + 2);
                string s13 = sLinia.Substring(koniec_tytulu + 2, t - koniec_tytulu - 2);

                int u = sLinia.IndexOf(",", t + 1);
                string s14 = sLinia.Substring(u + 1, u - t - 1);
int u = sLinia.IndexOf(",", t + 1);
string s14 = sLinia.Substring(t + 1, u - t - 1); // there should be "t+1" not "u+1"