• 大小: 212KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2022-11-30
  • 语言: C#
  • 标签: C#  语法分析  

资源简介

用C#完成了一个可视化的LR语法分析器,源代码从文件读取。点击选择文件按钮选择源文件,源文件的内容显示在textBox1中。分析的过程和结果显示在textBox2中。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace LR语法分析器
{
    public partial class Form1 : Form
    {
        string sourceFileName = ““;
        public Form1()
        {
            InitializeComponent();
        }

        private void textBox2_TextChanged(object sender EventArgs e)
        {

        }

        private void button1_Click(object sender EventArgs e)
        {

            textBox1.Clear();textBox2.Clear();
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Multiselect = false;     //一次只能选取一个文件
            dialog.title = “请选择文件夹“;
            dialog.Filter = “文本文件文件(*.txt)|*.txt|word文件(*.doc)|*.doc“;
            if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                sourceFileName = dialog.FileName;
                
            }
            if (sourceFileName != ““)
            {
                string[] lines = File.ReadAllLines(sourceFileName);
                // 在textBox1中显示文件内容
                foreach (string line in lines)
                {
                    string str = line + Environment.NewLine;
                    textBox1.AppendText(str);
                }
            }
        }

        private void button2_Click(object sender EventArgs e)
        {
            if(sourceFileName!=““)
            {
                syntax syt = new syntax(sourceFileName);

                textBox2.Text = syt.starting();
            }
            else
            {
                //出错处理
            }
        }
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         22  2018-10-27 18:56  LR语法分析器\.git\COMMIT_EDITMSG

     文件        938  2018-10-27 21:30  LR语法分析器\.git\config

     文件         73  2018-10-27 18:56  LR语法分析器\.git\description

     文件        110  2018-10-27 21:30  LR语法分析器\.git\FETCH_HEAD

     文件         23  2018-10-27 18:56  LR语法分析器\.git\HEAD

     文件        478  2018-10-27 18:56  LR语法分析器\.git\hooks\applypatch-msg.sample

     文件        896  2018-10-27 18:56  LR语法分析器\.git\hooks\commit-msg.sample

     文件        189  2018-10-27 18:56  LR语法分析器\.git\hooks\post-update.sample

     文件        424  2018-10-27 18:56  LR语法分析器\.git\hooks\pre-applypatch.sample

     文件       1642  2018-10-27 18:56  LR语法分析器\.git\hooks\pre-commit.sample

     文件       1348  2018-10-27 18:56  LR语法分析器\.git\hooks\pre-push.sample

     文件       4951  2018-10-27 18:56  LR语法分析器\.git\hooks\pre-rebase.sample

     文件        544  2018-10-27 18:56  LR语法分析器\.git\hooks\pre-receive.sample

     文件       1239  2018-10-27 18:56  LR语法分析器\.git\hooks\prepare-commit-msg.sample

     文件       3610  2018-10-27 18:56  LR语法分析器\.git\hooks\update.sample

     文件       1464  2018-10-27 18:56  LR语法分析器\.git\index

     文件        240  2018-10-27 18:56  LR语法分析器\.git\info\exclude

     文件        344  2018-10-27 18:56  LR语法分析器\.git\logs\HEAD

     文件        344  2018-10-27 18:56  LR语法分析器\.git\logs\refs\heads\master

     文件        143  2018-10-27 21:30  LR语法分析器\.git\logs\refs\remotes\origin\master

     文件        150  2018-10-27 18:56  LR语法分析器\.git\ms-persist.xml

     文件        751  2018-10-27 18:56  LR语法分析器\.git\objects\1f\f0c423042b46cb1d617b81efb715defbe8054d

     文件        165  2018-10-27 18:56  LR语法分析器\.git\objects\34\1382d3e59cf0f4808f5c8237012ef76daad9d3

     文件        186  2018-10-27 18:56  LR语法分析器\.git\objects\39\645652af62950ebf3b28ec3a5400dcec30b1c4

     文件       2112  2018-10-27 18:56  LR语法分析器\.git\objects\3c\4efe206bd0e7230ad0ae8396a3c883c8207906

     文件        335  2018-10-27 18:56  LR语法分析器\.git\objects\3c\cbd0d2099ed2fa7fd7891b909c2fd35fff8729

     文件       1145  2018-10-27 18:56  LR语法分析器\.git\objects\3c\e0b8681d3c10066945229278047530c88761e2

     文件        231  2018-10-27 18:56  LR语法分析器\.git\objects\3e\b3a5d4b5671c4cabded7bc12d9c7f988ee240b

     文件        600  2018-10-27 18:56  LR语法分析器\.git\objects\5e\04b824648823607d43b5a4f1be62788f677bd7

     文件        482  2018-10-27 18:56  LR语法分析器\.git\objects\65\73f1a33e7050ae9808e64e7656f1bcbb2996b5

............此处省略99个文件信息

评论

共有 条评论