如何使用 C# 检查文本框是否包含来自 TXT 文件的行
How to check if a textbox has a line from a TXT File with C#
我想做的很简单;当我点击一个按钮时,我的应用程序应该检查 textBox1.Text
是否有文本文件中的一行。
注意:我不想检查文本框是否包含所有文本文件,只是想看看它是否有一行。
我试过了,但没有成功:
private void acceptBtn_Click(object sender, EventArgs e)
{
StreamReader sr = new StreamReader(usersPath);
string usersTXT = sr.ReadLine();
if (user_txt.Text == usersTXT)
{
loginPanel.Visible = false;
}
}
希望有人能帮助我。提前致谢 - 建行
if (File.ReadAllLines(path).Any(x => x == line))
{
// line found
}
将 x == line
替换为不区分大小写的检查或 Contains
(如果需要)。
尝试对字符串使用 Contains() 函数:
private void acceptBtn_Click(object sender, EventArgs e)
{
StreamReader sr = new StreamReader(usersPath);
string usersTXT = sr.ReadLine();
if (user_txt.Text.Contains(usersTXT))
{
loginPanel.Visible = false;
}
}
string usersTXT = sr.ReadLine();
刚读完一行。所以你只是检查你是否匹配文件中的 first 行。
您想要 File.ReadALlLines
(这也能正确处理流,但您不是):
if (File.ReadAllLines(usersPath).Contains(user_txt.Text))
{
}
读取所有行,枚举所有行以检查您的行是否在集合中。这种方法的唯一缺点是它总是读取整个文件。如果您只想阅读直到找到您的输入,则需要自己滚动阅读循环。如果你走那条路,一定要确保在 using
块中使用 StreamReader
。
您也可以只使用 File.ReadLines
(感谢@Selman22)来获取它的惰性枚举版本。我个人会选择这条路线。
显示此内容的实现:http://referencesource.microsoft.com/#mscorlib/system/io/file.cs,675b2259e8706c26
我想做的很简单;当我点击一个按钮时,我的应用程序应该检查 textBox1.Text
是否有文本文件中的一行。
注意:我不想检查文本框是否包含所有文本文件,只是想看看它是否有一行。
我试过了,但没有成功:
private void acceptBtn_Click(object sender, EventArgs e)
{
StreamReader sr = new StreamReader(usersPath);
string usersTXT = sr.ReadLine();
if (user_txt.Text == usersTXT)
{
loginPanel.Visible = false;
}
}
希望有人能帮助我。提前致谢 - 建行
if (File.ReadAllLines(path).Any(x => x == line))
{
// line found
}
将 x == line
替换为不区分大小写的检查或 Contains
(如果需要)。
尝试对字符串使用 Contains() 函数:
private void acceptBtn_Click(object sender, EventArgs e)
{
StreamReader sr = new StreamReader(usersPath);
string usersTXT = sr.ReadLine();
if (user_txt.Text.Contains(usersTXT))
{
loginPanel.Visible = false;
}
}
string usersTXT = sr.ReadLine();
刚读完一行。所以你只是检查你是否匹配文件中的 first 行。
您想要 File.ReadALlLines
(这也能正确处理流,但您不是):
if (File.ReadAllLines(usersPath).Contains(user_txt.Text))
{
}
读取所有行,枚举所有行以检查您的行是否在集合中。这种方法的唯一缺点是它总是读取整个文件。如果您只想阅读直到找到您的输入,则需要自己滚动阅读循环。如果你走那条路,一定要确保在 using
块中使用 StreamReader
。
您也可以只使用 File.ReadLines
(感谢@Selman22)来获取它的惰性枚举版本。我个人会选择这条路线。
显示此内容的实现:http://referencesource.microsoft.com/#mscorlib/system/io/file.cs,675b2259e8706c26