我正在创建一个控制台应用程序,它将名称作为输入并将其存储在文本文件中,然后我想检索以A开头的名称。
控制台应用程序有两个文本框和两个按钮。通过按下button1,文本框1中输入的文本将被复制到文本文件中,单击button2,U想要检索以A开头的名称,并将其显示在textbox2中。
private void button1_Click(object sender, EventArgs e)
{
TextWriter txt = new StreamWriter("d:\\demo.txt");
txt.Write(textBox1.Text);
txt.Close();
}
private void button2_Click(object sender, EventArgs e)
{
textBox2.Text = File.ReadAllText("d:\\demo.txt");
}
我知道如何使用
检索文本文件的整个数据textBox2.Text = File.ReadAllText("d:\\demo.txt");
请帮我检索以A开头的名字。
答案 0 :(得分:0)
将Write
更改为WriteLine
,然后您可以将每个名称作为单独的行读取。执行此操作时,请检查带StartsWith
的第一个字母。如果以a
开头,请使用textbox2
将其附加到+=
:
private void button1_Click(object sender, EventArgs e)
{
TextWriter txt = new StreamWriter("d:\\demo.txt");
txt.WriteLine(textBox1.Text);
txt.Close();
}
private void button2_Click(object sender, EventArgs e)
{
string line;
System.IO.StreamReader file = new System.IO.StreamReader(@"d:\\demo.txt");
while((line = file.ReadLine()) != null)
{
if (line.ToLower().StartsWith("a"))
{
textBox2.Text += " " + line;
}
}
}
答案 1 :(得分:0)
您没有提供所需的详细信息,但您是否正在寻找类似的内容; (将文本作为行写入文件并阅读)
private void button1_Click(object sender, EventArgs e)
{
TextWriter txt = new StreamWriter(@"d:\\demo.txt", append: true);
txt.WriteLine(textBox1.Text);
txt.Close();
}
private void button2_Click(object sender, EventArgs e)
{
var lines = File.ReadAllLines(@"d:\\demo.txt").Where(x => x.StartsWith("A"));
textBox2.Text = string.Join(",", lines);
}