private void button3_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.Filter = 'NFA Files|*.nfa'; openFileDialog1.Title = 'Select an NFA File';

if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
    string[] lines = File.ReadAllLines(openFileDialog1.FileName);
    string startSymbol = lines[0].Substring(lines[0].IndexOf(':') + 1).Trim();
    string endSymbol = lines[1].Substring(lines[1].IndexOf(':') + 1).Trim();
    string[] symbolSet = lines[2].Substring(lines[2].IndexOf(':') + 1).Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);

    listView1.Columns.Add('起始状态', 100);
    listView1.Columns.Add('接受符号', 100);
    listView1.Columns.Add('到达状态', 100);

    for (int i = 3; i < lines.Length; i++)
    {
        string[] tokens = lines[i].Split(new char[] { '\t' }, StringSplitOptions.RemoveEmptyEntries);
        string startState = tokens[0];
        string inputSymbol = tokens[1];
        string nextState = tokens[2];

        ListViewItem item = new ListViewItem(startState);
        item.SubItems.Add(inputSymbol);
        item.SubItems.Add(nextState);

        listView1.Items.Add(item);
    }
}

}

C# 使用 VS 读取 NFA 文件并显示在 ListView 中

原文地址: https://www.cveoy.top/t/topic/nr97 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录