导入CSV

using System;
using System.Collections.Generic;
using System.Text;

using System.Data;
using System.Data.OleDb;
using System.Web;
using System.IO;

namespace Common
{
    public class CSVHelper
    {
        /// <summary>
        /// Translate csv file to DataSet
        /// </summary>
        /// <param name="fileName">csv file name</param>
        /// <param name="folderName">The folder of the csv file</param>
        /// <returns>The relative DataSet of the csv file</returns>
        public static DataSet CSVToDataSet(string fileName, string folderName)
        {
            string strConn = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Text;HDR=yes;\";", folderName);

            using (DataSet dsReslut = new DataSet())
            {
                OleDbDataAdapter oleDbAdapter = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}]", fileName), strConn);
                oleDbAdapter.Fill(dsReslut);
                oleDbAdapter.Dispose();
                return dsReslut;
            }
        }

        /// <summary>
        /// Translate csv file to DataTable
        /// </summary>
        /// <param name="fileName">csv file name</param>
        /// <param name="folderName">The folder of the csv file</param>
        /// <returns>The relative DataTable of the csv file</returns>
        public static DataTable CSVToDataTable(string fileName, string folderName)
        {
            string strConn = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Text;HDR=yes;\";", folderName);

            using (DataTable dt = new DataTable())
            {
                OleDbDataAdapter oleDbAdapter = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}]", fileName), strConn);
                oleDbAdapter.Fill(dt);
                oleDbAdapter.Dispose();
                return dt;
            }
        }

        /// <summary>
        /// Translate csv file to DataSet
        /// </summary>
        /// <param name="fileName">csv file name</param>
        /// <param name="folderName">The folder of the csv file</param>
        /// <param name="count">Select how many datasets</param>
        /// <returns>The relative DataSet of the csv file</returns>
        public static DataSet CSVToDataSet(string fileName, string folderName, int count)
        {
            string strConn = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Text;HDR=yes;\";", folderName);
            using (DataSet dsReslut = new DataSet())
            {
                OleDbDataAdapter oleDbAdapter = new OleDbDataAdapter(string.Format("SELECT top {0} * FROM [{1}]", count, fileName), strConn);
                oleDbAdapter.Fill(dsReslut);
                oleDbAdapter.Dispose();
                return dsReslut;
            }
        }

        /// <summary>
        /// Translate csv file to DataTable
        /// </summary>
        /// <param name="fileName">csv file name</param>
        /// <param name="folderName">The folder of the csv file</param>
        /// <param name="count">Select how many datasets</param>
        /// <returns>The relative DataTable of the csv file</returns>
        public static DataTable CSVToDataTable(string fileName, string folderName, int count)
        {
            string strConn = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Text;HDR=yes;\";", folderName);

            using (DataTable dt = new DataTable())
            {
                OleDbDataAdapter oleDbAdapter = new OleDbDataAdapter(string.Format("SELECT top {0} * FROM [{1}]", count, fileName), strConn);
                oleDbAdapter.Fill(dt);
                oleDbAdapter.Dispose();
                return dt;
            }
        }

   }
}

posted @ 2010-11-02 22:24  编程玩家  阅读(417)  评论(0编辑  收藏  举报