C#如何格式化读线输出

C#如何格式化读线输出,c#,format,readline,C#,Format,Readline,目前,我已经在富文本框中读取了文本文件中的一行输出,但我想格式化该行 if (UsernameCheckers.Text != "Username") { string line; StringBuilder sb = new StringBuilder(); using (System.IO.StreamReader file = new System.IO.Strea

目前,我已经在富文本框中读取了文本文件中的一行输出,但我想格式化该行

 if (UsernameCheckers.Text != "Username")
            {
                string line;

                StringBuilder sb = new StringBuilder();

                using (System.IO.StreamReader file = new System.IO.StreamReader(@"\\studprint2\PCOUNTER\DATA\REJECT.LOG"))
                {
                    while ((line = file.ReadLine()) != null)
                    {
                        if (line.IndexOf(UsernameCheckers.Text, StringComparison.OrdinalIgnoreCase) >= 0)
                        {
                            sb.AppendLine(line.ToString() + "\n");
                        }
                    }
                }
                DisplayBox.Text = sb.ToString();
            }
例如

BCROSS11,Documentname.doc,\STUDPRINT2\computername,2010年5月15日,14:48,\1234566788,余额不足,,,/Ts=4beea62107502,10

我想让它说

Username: BCROSS11

File name: Documentname.doc

Error: Insufficient balance

Date: 15/05/2010,14:48

Computer name: \STUDPRINT2\computername

我该怎么办?

如果您的字符串片段以相同的顺序保留在每行,您可以使用 方法并将其切片到所需的部分

下面是一个小型控制台应用程序,用于说明在您的案例中的用法:

static void Main(string[] args)
{
    string test = @"BCROSS11,Documentname.doc,\STUDPRINT2\computername,15/05/2010,14:48,\1234566788,Insufficient balance,,,/Ts=4BEEA622,107502,10,,";

    // Split the string and it will return an array of strings
    string[] split_array = test.Split(',');

    // Test output to the console
    Console.WriteLine(String.Join("\n", split_array));
    Console.WriteLine("END");

    Console.ReadKey();
}
输出如下所示:

BCROSS11
Documentname.doc
\STUDPRINT2\computername
15/05/2010
14:48
\1234566788
Insufficient balance


/Ts=4BEEA622
107502
10


END
现在你可以数一数这些线,你就会知道在哪个位置你必须提取信息。不要忘记索引以
0
开头,而不是以
1
开头!
请注意,一个字符串:
“,”
将拆分为3个空字符串。这就是为什么输出中有空行。

string.Split
。是否需要将文件读入一个字符串?文件的内容是什么样子的?您能将其解析为数组或结构以更好地格式化吗?看起来您拥有的是csv文件。您可以按照其他人的建议拆分字符串。或者,您可以使用任何开源库,如其当前的a.log文件(文本文件),该文件包含大量的BCROSS11、Documentname.doc、\STUDPRINT2\computername、15/05/2010、14:48、\1234566788、余额不足、、/Ts=4beea62107502、10等格式