从文本文件创建表

时间:2015-01-07 15:02:09

标签: c# string trim

我想在文本文件中的c#应用程序中创建一个表。在文本文件中说 1:"发射器",1,网格,32,6。这意味着表的名称是Transmitter,它属于选项卡号1,它是一个网格类型,它有32行和6列。

任何人都可以帮忙吗?

这是我的代码-----

String line;
        public Form1()
        {
            InitializeComponent();
            getFormContentFromFile();

        }

        public void getFormContentFromFile()
        {
            using (StreamReader Reader = new StreamReader("neo2G.res"))
            {
                while (!Reader.EndOfStream)
                {
                    line = Reader.ReadLine();

                    if (line.Equals("TABS"))
                    {
                       while (!line.Equals(".."))
                        {
                            line = Reader.ReadLine();
                            if (!line.Equals(".."))
                            {
                                line = Regex.Replace(line, @"[\d-]", string.Empty);
                                line = line.Trim(':', '"');

                                TabPage myTabPage = new TabPage(line);
                                tabControl1.TabPages.Add(myTabPage);
                            }
                            }
                    }

                    if(line.Equals("TABLES"))
                    {



                    }
                }

1 个答案:

答案 0 :(得分:0)

这是一篇关于在CSV文件中阅读的好文章:

http://www.codeproject.com/Articles/415732/Reading-and-Writing-CSV-Files-in-Csharp

我建议执行拆分来解析您的数据:

string stringIreadIn = //...
string[] myData = stringIreadIn.Split(Environment.NewLine.ToCharArray());

您想要创建哪种表格?您可以使用ADO.NET在C#中创建表:

http://www.codeproject.com/Articles/361579/A-Beginners-Tutorial-for-Understanding-ADO-NET

以下是创建DataTable的方法:

        DataTable table = new DataTable(); 
        for (int i = 0; i < 6; i++) 
        { 
            table.Columns.Add("My column " + i.ToString(), Type.String);
        }   
        for (int i = 0; i < 32; i++) 
        {
            DataRow dr = table.NewRow();
            // populate data row with values here
            table.Rows.Add(dr);
        }