예제 #1
0
        public DataSet ReadExcelData(string ExcelFilePath)
        {
            DataSet oResultDataSet = null;
            FileInfo oFileInfo = new FileInfo(ExcelFilePath);
            using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(ExcelFilePath, Encoding.UTF8))
            {
                gp.FirstRowHasHeader = true;
                gp.ColumnDelimiter = ',';
                oResultDataSet = gp.GetDataSet();
            }

            if (oResultDataSet != null && oResultDataSet.Tables.Count > 0)
                oResultDataSet.Tables[0].TableName = new FileInfo(ExcelFilePath).Name;

            return oResultDataSet;
        }
예제 #2
0
파일: Manager.cs 프로젝트: sham165/krypton
        /// <summary>
        ///  This method read an csv file and returns a dataset.
        /// </summary>
        /// <param name="realfilePath"></param>
        /// <param name="dataSetname"></param>
        /// <returns></returns>
        private static DataSet GetDataSet(string realfilePath, string dataSetname = "dataset")
        {
            DataSet ds          = new DataSet(dataSetname);
            string  tmpFileName = GetTempFile(realfilePath);

            try
            {
                var extension = Path.GetExtension(tmpFileName);
                if (extension != null && extension.ToLower().Equals(".csv"))
                {
                    if (!File.Exists(tmpFileName))
                    {
                        throw new KryptonException("Error", Utility.GetCommonMsgVariable("KRYPTONERRCODE0037").Replace("{MSG}", realfilePath));
                    }
                    using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(tmpFileName, Encoding.UTF8))
                    {
                        gp.FirstRowHasHeader = true;
                        gp.ColumnDelimiter   = ',';
                        ds = gp.GetDataSet();
                    }
                }
                else
                {
                    ds = GetExcelDataSet(tmpFileName, dataSetname);
                }
            }
            finally
            {
                if (File.Exists(tmpFileName))
                {
                    try
                    {
                        File.Delete(tmpFileName);
                    }
                    catch
                    {
                        // ignored
                    }
                }
            }
            //Validate for unwanted sheets
            ValidateSheetCount(ds, realfilePath);

            return(ds);
        }
예제 #3
0
        public DataSet ReadExcelData(string ExcelFilePath)
        {
            DataSet  oResultDataSet = null;
            FileInfo oFileInfo      = new FileInfo(ExcelFilePath);

            using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(ExcelFilePath, Encoding.UTF8))
            {
                gp.FirstRowHasHeader = true;
                gp.ColumnDelimiter   = ',';
                oResultDataSet       = gp.GetDataSet();
            }

            if (oResultDataSet != null && oResultDataSet.Tables.Count > 0)
            {
                oResultDataSet.Tables[0].TableName = new FileInfo(ExcelFilePath).Name;
            }

            return(oResultDataSet);
        }
예제 #4
0
파일: Program.cs 프로젝트: sham165/krypton
        /// <summary>
        ///   Get Dataset from the file specified.
        /// </summary>
        /// <param name="filePath">string : Filepath.</param>
        /// <returns>Dataset : dataset for the file.</returns>
        ///
        private static DataSet GetDataSet(string filePath)
        {
            DataSet dataset       = new DataSet();
            string  tmpFileName   = string.Empty;
            string  fileExtension = Path.GetExtension(filePath);

            try
            {
                tmpFileName = GetTemporaryFile(fileExtension, filePath);
                if (fileExtension != null && fileExtension.ToLower().Equals(".csv"))
                {
                    if (!File.Exists(tmpFileName))
                    {
                        Console.WriteLine(ConsoleMessages.FOD + filePath);
                    }
                    using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(tmpFileName, Encoding.UTF7))
                    {
                        gp.FirstRowHasHeader = true;
                        gp.ColumnDelimiter   = ',';
                        dataset = gp.GetDataSet();
                    }
                }
                else
                {
                    dataset = GetExcelDataSet(filePath);
                }
            }
            catch (Exception ex)
            {
                KryptonException.Writeexception(ex);
            }
            finally
            {
                File.Delete(tmpFileName);
            }
            return(dataset);
        }
예제 #5
0
파일: Manager.cs 프로젝트: Thinksys/krypton
        /// <summary>
        ///  This method read an csv file and returns a dataset.
        /// </summary>
        /// <param name="realfilePath"></param>
        /// <param name="dataSetname"></param>
        /// <returns></returns>
        private static DataSet GetDataSet(string realfilePath, string dataSetname = "dataset")
        {
            DataSet ds = new DataSet(dataSetname);
            string tmpFileName = GetTempFile(realfilePath);
            try
            {
                var extension = Path.GetExtension(tmpFileName);
                if (extension != null && extension.ToLower().Equals(".csv"))
                {
                    if (!File.Exists(tmpFileName))
                    {
                        throw new KryptonException("Error", Utility.GetCommonMsgVariable("KRYPTONERRCODE0037").Replace("{MSG}", realfilePath));
                    }
                    using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(tmpFileName, Encoding.UTF8))
                    {
                        gp.FirstRowHasHeader = true;
                        gp.ColumnDelimiter = ',';
                        ds = gp.GetDataSet();
                    }

                }
                else
                {
                    ds = GetExcelDataSet(tmpFileName, dataSetname);
                }
            }
            finally
            {
                if (File.Exists(tmpFileName))
                    try
                    {
                        File.Delete(tmpFileName);
                    }
                    catch
                    {
                        // ignored
                    }
            }
            //Validate for unwanted sheets
            ValidateSheetCount(ds, realfilePath);

            return ds;
        }
예제 #6
0
파일: Program.cs 프로젝트: Thinksys/krypton
        /// <summary>
        ///   Get Dataset from the file specified.
        /// </summary>
        /// <param name="filePath">string : Filepath.</param>
        /// <returns>Dataset : dataset for the file.</returns>
        /// 
        private static DataSet GetDataSet(string filePath)
        {
            DataSet dataset = new DataSet();
            string tmpFileName = string.Empty;
            string fileExtension = Path.GetExtension(filePath);

            try
            {
                tmpFileName = GetTemporaryFile(fileExtension, filePath);
                if (fileExtension != null && fileExtension.ToLower().Equals(".csv"))
                {
                    if (!File.Exists(tmpFileName))
                    {
                        Console.WriteLine(ConsoleMessages.FOD + filePath);
                    }
                    using (GenericParsing.GenericParserAdapter gp = new GenericParsing.GenericParserAdapter(tmpFileName, Encoding.UTF7))
                    {
                        gp.FirstRowHasHeader = true;
                        gp.ColumnDelimiter = ',';
                        dataset = gp.GetDataSet();
                    }
                }
                else
                {
                    dataset = GetExcelDataSet(filePath);
                }
            }
            catch (Exception ex)
            {
                KryptonException.Writeexception(ex);
            }
            finally
            {
                File.Delete(tmpFileName);
            }
            return dataset;
        }