【发布时间】:2017-05-22 12:27:33
【问题描述】:
我正在使用带有 Visual Studio 的 Windows 窗体应用程序创建一个购物篮表单,我有一个包含一些产品的文本文件,当用户选择加载时,我想读取该文件,然后将数据放入 ListView 但它只做第一项。
这是我目前的代码和结果:
private void LoadOrder_Click(object sender, EventArgs e)
{
Stream myStream = null;
OpenFileDialog theDialog = new OpenFileDialog();
theDialog.Title = "Open Text File";
theDialog.Filter = "TXT files|*.txt";
theDialog.InitialDirectory = @"C:\";
if (theDialog.ShowDialog() == DialogResult.OK)
{
try
{
if ((myStream = theDialog.OpenFile()) != null)
{
using (myStream)
{
System.IO.StreamReader sr = new System.IO.StreamReader(myStream);
string fileContent = sr.ReadToEnd();
string[] fileItems = fileContent.Split('|');
sr.Dispose();
ListViewItem lv = new ListViewItem();
lv.Text = fileItems[0].ToString();
lv.SubItems.Add(fileItems[1].ToString());
lv.SubItems.Add(fileItems[2].ToString());
basket.Items.Add(lv);
}
}
}
catch (Exception ex)
{
MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
}
}
}
文本文件:
Banana|6|0.25
Steak|2|1.75
Chips|1|3
Sweets|6|1.5
加载后的ListView:
如果有人可以帮助或指出正确的方向,将不胜感激,谢谢!
【问题讨论】:
-
你能发布完整的 ex.StackTrace 吗?
标签: c# winforms listview streamreader