C# 解析一个.txt文件并在C中的文本框中显示它#
我的程序:包含5个文本框,如下图所示: 我的目标:我想解析settings.txt文件中冒号之后的任何内容:“”。因此,例如:我希望(459800090581)。在阅读Settings.txt文件中的“第一本手册:(459800090581)。”行后显示在我的第一个文本框中。这适用于其他各个字段C# 解析一个.txt文件并在C中的文本框中显示它#,c#,visual-studio-2010,C#,Visual Studio 2010,我的程序:包含5个文本框,如下图所示: 我的目标:我想解析settings.txt文件中冒号之后的任何内容:“”。因此,例如:我希望(459800090581)。在阅读Settings.txt文件中的“第一本手册:(459800090581)。”行后显示在我的第一个文本框中。这适用于其他各个字段 我试图在谷歌上搜索如何解析文本文件,但我找不到一个简单的文件解析程序来帮助我学习和理解如何在C#中解析文件。本课程将帮助我快速轻松地学习这项技术,非常感谢您的帮助!谢谢!!:) 从以下内容开始: ch
我试图在谷歌上搜索如何解析文本文件,但我找不到一个简单的文件解析程序来帮助我学习和理解如何在C#中解析文件。本课程将帮助我快速轻松地学习这项技术,非常感谢您的帮助!谢谢!!:) 从以下内容开始:
char[] delimiters = new [] { ':' };
foreach (string line in File.ReadAllLines(@"some path"))
{
if (!string.IsNullOrWhiteSpace(line))
{
string[] parts = line.Split(delimiters);
if (parts != null && parts.Length == 2)
{
string label = parts[0];
string value = parts[1];
Console.WriteLine("Label: {0}, Value: {1}", label, value);
}
}
}
请参阅和。这应该可以完成这项工作
var path = @"---"; //Path to your settings file.
RichTextBox rtb = new RichTextBox();
System.IO.StreamReader sis = new System.IO.StreamReader(path);
rtb.Text = sis.ReadToEnd();
sis.Close();
int counter = 0;
foreach (string line in rtb.Lines)
{
if (line.Contains("(") == true && line.Contains(")") == true)
{
counter++;
string numbers = line.Substring(line.IndexOf("("), line.IndexOf(")") - (line.IndexOf("(") - 1));
switch (counter)
{
case 1:
textBox1.Text = numbers;
break;
case 2:
textBox2.Text = numbers;
break;
case 3:
textBox3.Text = numbers;
break;
case 4:
textBox4.Text = numbers;
break;
case 5:
textBox5.Text = numbers;
break;
}
}
}
查看将返回包含每行的数组的。然后研究在冒号上拆分的方法。这将为您获取所需字符串,此时您可以将其添加到文本框中。在这种情况下,您需要做的第一件事是将问题分解为更小的部分。第一个问题是如何逐行读取文件。一旦可以这样做,就需要解析每一行。我很惊讶你在这两个方面都找不到任何资源。没有必要创建一个RichTextBox来将每一行都变成一个字符串。您也在模拟字符串。不必要地拆分功能。太棒了!谢谢辛格。它有效。:)再次感谢你帮助我。