예제 #1
0
        private static void Main(string[] args)
        {
            if (args.Length < 3)
            {
                Console.WriteLine("Syntax: CompareExcelFiles file1 file2 column [column...]");
                Console.WriteLine("        file1     first file to compare");
                Console.WriteLine("        file2     second file to compare");
                Console.WriteLine("        column    name of column(s) to sort / compare by");

                return;
            }

            var excel  = new ExcelLoader();
            var table1 = excel.Load(args[0]);
            var table2 = excel.Load(args[1]);

            var columns  = args.Skip(2).ToArray();
            var comparer = new TableComparer(columns);

            var diff1 = comparer.Compare(table1, table2);
            var diff2 = comparer.Compare(table2, table1);

            DumpResult(1, args[0], diff1, table1.RowCount, columns);
            DumpResult(2, args[1], diff2, table2.RowCount, columns);
        }
예제 #2
0
파일: Program.cs 프로젝트: njmube/public
        private static void Main(string[] args)
        {
            if (args.Length < 3)
              {
            Console.WriteLine("Syntax: CompareExcelFiles file1 file2 column [column...]");
            Console.WriteLine("        file1     first file to compare");
            Console.WriteLine("        file2     second file to compare");
            Console.WriteLine("        column    name of column(s) to sort / compare by");

            return;
              }

              var excel = new ExcelLoader();
              var table1 = excel.Load(args[0]);
              var table2 = excel.Load(args[1]);

              var columns = args.Skip(2).ToArray();
              var comparer = new TableComparer(columns);

              var diff1 = comparer.Compare(table1, table2);
              var diff2 = comparer.Compare(table2, table1);

              DumpResult(1, args[0], diff1, table1.RowCount, columns);
              DumpResult(2, args[1], diff2, table2.RowCount, columns);
        }
예제 #3
0
        private void importButton_Click(object sender, EventArgs e)
        {
            if (_chooseFile?.Exists ?? false)
            {
                var loader = new ExcelLoader();
                var batch  = loader.Load(_chooseFile.FullName);
                if (!string.IsNullOrWhiteSpace(batchInfoTextBox.Text))
                {
                    foreach (var info in batch.Items)
                    {
                        info.BatchNo = batchInfoTextBox.Text;
                    }
                }

                //if (infos != null)
                //{
                //    //foreach (var info in infos)
                //    //    Console.WriteLine(info.QRCodeContent);
                //    var form = new ConfirmImportDataForm(infos);
                //    form.ShowDialog();
                //}
            }
            else
            {
                MessageBox.Show("请选择文件", "请选择文件");
            }
        }
예제 #4
0
        public void LoadsExcelFile()
        {
            const string FILE_NAME = @"..\..\..\file1.xlsx";

            var sut = new ExcelLoader();

            var result = sut.Load(FILE_NAME);

            Assert.AreEqual(9, result.RowCount); // number of *data* rows
            Assert.AreEqual(4, result.ColCount);
            CollectionAssert.AreEqual(new[] { "A", "B", "C", "D" }, result.Columns);
            CollectionAssert.AreEqual(new[] { "1", "10", "1", "100" }, result.Data[0]);
            CollectionAssert.AreEqual(new[] { "2", "20", "1", "200" }, result.Data[1]);
            CollectionAssert.AreEqual(new[] { "3", "30", "1", "300" }, result.Data[2]);
            CollectionAssert.AreEqual(new[] { "1", "40", "2", "400" }, result.Data[3]);
            CollectionAssert.AreEqual(new[] { "2", "50", "2", "500" }, result.Data[4]);
            CollectionAssert.AreEqual(new[] { "3", "60", "2", "600" }, result.Data[5]);
            CollectionAssert.AreEqual(new[] { "1", "70", "3", "700" }, result.Data[6]);
            CollectionAssert.AreEqual(new[] { "2", "80", "3", "800" }, result.Data[7]);
            CollectionAssert.AreEqual(new[] { "3", "90", "3", "900" }, result.Data[8]);
        }
예제 #5
0
        private void ImportFromExcel()
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Multiselect = false;
            openFileDialog.Title       = "选择数据源文件";
            openFileDialog.Filter      = "(*.xls,*.xlsx)|*.xls;*.xlsx;";
            //openFileDialog.ShowDialog();
            if (openFileDialog.ShowDialog() == DialogResult.OK && openFileDialog.CheckFileExists)
            {
                var excelLoader = new ExcelLoader();
                try
                {
                    var batch = excelLoader.Load(openFileDialog.FileName);
                    var form  = new ConfirmImportDataForm(batch);
                    form.ShowDialog();
                }
                catch (Exception exp)
                {
                    MessageBox.Show("无效文件", exp.Message);
                }
            }
        }