gpt4 book ai didi

c# - 如何使用列表框将文本文件字符串发送到文本框?

转载 作者:太空宇宙 更新时间:2023-11-03 12:32:53 25 4
gpt4 key购买 nike

我正在处理的 Windows 窗体应用程序项目要求我用文本文件中的值填充 4 个文本框。在文本文件中,每一行包含每个文本框的一个词,以空格分隔。 (例如,第一行可以说“cat fish dog horse”,第二行可以说“a b c d”)

列表框包含每一行的第一个单词。 (用同样的例子运行,列表框将包含“cat”和“a”。)

因此,我将双击列表框中的一个值,并使用流阅读器在文本文件中运行搜索,选择包含所选项目的行,将其放入一个字符串数组中,根据间距,并将它们放入 4 个相应的文本框中。

但它还不能正常工作,有什么建议吗?

       private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)//list double click
{
AccountBox.Clear();
EmailBox.Clear();
UserBox.Clear();
PassBox.Clear(); //to reset boxes

string accountName = listBox1.GetItemText(listBox1.SelectedItem);
AccountBox.Text = accountName;

System.IO.StreamReader account = new System.IO.StreamReader("record.txt");

var lineCount = File.ReadLines("record.txt").Count();
int lines = Convert.ToInt32(lineCount);
for (int i = 0; i < lines; i++)

{
if (account.ReadLine().Contains(AccountBox.Text))
{
string[] words;

words = account.ReadLine().Split(' ');

AccountBox.Text = words[0];
EmailBox.Text = words[1];
UserBox.Text = words[2];
PassBox.Text = words[3];
}
else
{
break;
}
}

最佳答案

由于您使用文件作为会计,所以我假设其中一定没有太多记录,因此您可以轻松地一次读取所有记录并在内存中进行比较,这样会更快更容易:

string accountName = listBox1.GetItemText(listBox1.SelectedItem);
AccountBox.Text = accountName;
string[] lines = File.ReadAllLines("record.txt");
string account = lines.Where(l=>l.Split(' ')[0]==accountName).FirstOrDefault();

if(account!=null)
{
string[] words = account.Split(' ');
AccountBox.Text = words[0];
EmailBox.Text = words[1];
UserBox.Text = words[2];
PassBox.Text = words[3];
}

关于c# - 如何使用列表框将文本文件字符串发送到文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42036699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com