0

所以我读到的关于以 Windows 形式加载文本文件的大部分内容都显示你将它加载到一维字符串数组中。但我有一些我喜欢做的功能,如果它是一个二维数组,效果会更好。在这个例子中,我有一个带有 isbn、作者、标题、年份、价格的图书目录。我希望能够编译有关最昂贵和最便宜书籍的数据(我已经能够从我拥有的用于用户输入的数组中完成),并且能够按标题、isbn 等搜索数组。我也在多列列表视图中显示它。

这是我加载文本文件(这是由新行分隔的新记录,它是制表符('\t')分隔的)并将其显示在多列列表视图中的内容。我需要做什么才能将其加载到二维数组中?我将如何显示它?任何帮助都会很棒。

static FileStream textFile = new FileStream("booklist.txt",
            FileMode.OpenOrCreate, FileAccess.ReadWrite);
    StreamReader reader = new StreamReader(textFile);
    StreamWriter writer = new StreamWriter(textFile);
    const char DELIM = '\t';
    //string[] booksTextArray;
    string line = "";
    string[] items;
    ListViewItem listItem;

// the load button
private void LoadButton_Click(object sender, EventArgs e)
    {
        // loads text file with existing book catalog
        while((line = reader.ReadLine()) != null)
        {
            items = line.Split('\t'); //Split the line.
            listItem = new ListViewItem(); //"Row" object.
            for (int i = 0; i < items.Length; i++)
            {
                if (i == 0)
                {
                    listItem.Text = items[i]; //First item is not a "subitem".
                }
                else
                {
                    listItem.SubItems.Add(items[i]); //Add it to the "Row" object.
                }
            }
            listView1.Items.Add(listItem); //Add the row object to the listview.
            status_label.Text = "Load successful.";
        }
    }
4

0 回答 0