C#解析和数组

C#解析和数组,c#,visual-studio-2010,C#,Visual Studio 2010,我正在制作一个解析一些数据的程序,但不知怎么的,我没有收到我需要的东西 我在文件中按以下顺序存储数据: 1111 username email@email.com IMAGE01: http://www.1234567890.net/image/cc_141019050341.png 因此,我制作了一个名为“lines”的数组,文件中每行文本包含一个数据,然后: this.videoId = lines[0]; this.clientUser = lines[1]; t

我正在制作一个解析一些数据的程序,但不知怎么的,我没有收到我需要的东西

我在文件中按以下顺序存储数据:

1111
username
email@email.com
IMAGE01: http://www.1234567890.net/image/cc_141019050341.png
因此,我制作了一个名为“lines”的数组,文件中每行文本包含一个数据,然后:

    this.videoId = lines[0];
    this.clientUser = lines[1];
    this.clientEmail = lines[2];

    this.textLines = new List<string>();
    this.imageLines = new Dictionary<int,string>();

    for (int i = 3; i < lines.Length; i++)
    {
        if (lines[i].Contains("IMAGE"))
        {
            int imgNumber = Int32.Parse(
                    lines[i].Substring(Math.Max(0, lines[i].Length - 10), 2)
                );
            this.imageLines.Add(imgNumber, lines[i].Substring(Math.Max(0, lines[i].Length - 7)));
        }
        else
        {
            this.textLines.Add(lines[i]);
        }
    }    
我收到:

05: 341.png

你知道为什么吗?谢谢您的时间。

您的子字符串正在点击cc_141019050341.png

cc_141019(first one extracts this 05)0(second one extracts this 341.png )
我建议您使用正则表达式来提取所需的部分

差不多

IMAGE(?<num>\d+).*?:\s(?<url>.*)
IMAGE(?\d+).*:\s(?.*)
您可以在代码中使用它,如

var match = new Regex(@"IMAGE(?<num>\d+).*?:\s(?<url>.*)").Match(line[i]]);
if (match.Success)
{
    var url = match.Groups["url"];
    var strNum = match.Groups["num"];
}

var match=new Regex(@“IMAGE(?\d+).*?:\s(?.*).match(第[i]]行);
如果(匹配成功)
{
var url=match.Groups[“url”];
var strNum=match.Groups[“num”];
}

谢谢,请检查您的电子邮件。
IMAGE(?<num>\d+).*?:\s(?<url>.*)
var match = new Regex(@"IMAGE(?<num>\d+).*?:\s(?<url>.*)").Match(line[i]]);
if (match.Success)
{
    var url = match.Groups["url"];
    var strNum = match.Groups["num"];
}