这是我的问题。我有文本文件,它不包含任何动物名称我的文本文件内部是这样的。
猫p 狗现在我想阅读此文本文件并将这些内容存储到数组列表中 我尝试了解决这些问题的几种方法,但不是单词......
这些是我的代码
List<String> arrayList = new List<String>();
String path = Server.MapPath("~\\Resarch\\new.txt");
StreamReader sre = new StreamReader(path);
for (int x = 0; x < arrayList.Count; x++)
{
arrayList[x] = sre.ReadLine();
}
foreach(var a in arrayList)
{
TextBox1.Text = a;
}
答案 0 :(得分:0)
使用File.ReadAllLines
var arrayList = File.ReadAllLines(filepath).ToList();
还有一点,您正在循环收集并将集合中的 last 值分配给Textbox
这是预期的吗?您是否需要在文本框中显示所有值或仅显示最后一个值?
更新
显示Textbox
TextBox1.Text = String.Join(Environment.NewLine, arrayList);
答案 1 :(得分:0)
我知道这个问题很旧,但是我认为我的回答会对其他用户有所帮助。 如果要从文本文件中获取一些数据,可以使用以下代码行:
var data = File.ReadAllLines("text.txt").Select(x => x.Split('=')).Where(x => x.Length > 1).ToDictionary(x => x[0].Trim(), x => x[1]);
这是您的text.txt
文件应如何工作的样子:
Animal1=cat
Animal2=dog
Animal3=rat
Animal4=elephant
Animal5=bird
此代码的一般用法是:
string a = string.Format("Animal: {0}", data["Animal"]);
例如,如果我理解正确,那么您已经知道您的动物数量。
因此,您可以从1到最后一个动物编号进行for
循环:
for (int i = 1; i <= 5; i++)
{
string animal = string.Format("Animal{0}: {1}", i, data["Animal" + i]);
// The command to insert data to the array needs to come here.
}