#region 读取csv文件 /// <summary> /// 读取CVS文件 /// </summary> /// <param name="path">文件路径</param> /// <param name="name">文件名称</param> /// <returns>DataTable</returns> public static DataTable ReadCVS(string filepath, string filename) { //string cvsDir = filepath;//要读取的CVS路径 DataTable dt = new DataTable(); if (filename.Trim().ToUpper().EndsWith("CSV"))//判断所要读取的扩展名 { string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='text;HDR=NO;FMT=Delimited'";//有列的读取 string commandText = "select * from [" + filename + "]";//SQL语句 OleDbConnection olconn = new OleDbConnection(connStr); olconn.Open(); OleDbDataAdapter odp = new OleDbDataAdapter(commandText, olconn); odp.Fill(dt); olconn.Close(); odp.Dispose(); olconn.Dispose(); } return dt; } #endregion #region 读取xls文件 /// <summary> /// 读取Excel文件 /// </summary> /// <param name="filepath">文件路径</param> /// <param name="filename">文件名称</param> /// <returns>DataTable</returns> public static DataTable ReadExcel(string filepath, string filename) { DataTable dt = new DataTable(); if (filename.Trim().ToUpper().EndsWith("XLS")) { string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1'"; string commandText = "select * from [" + filename + "]"; OleDbConnection olconn = new OleDbConnection(connStr); olconn.Open(); OleDbDataAdapter odp = new OleDbDataAdapter(commandText, olconn); odp.Fill(dt); olconn.Close(); odp.Dispose(); olconn.Dispose(); } return dt; } #endregion #region 读取txt文件 /// <summary> /// 读取Txt文本文件 /// </summary> /// <param name="filepath">文件路径</param> /// <param name="filename">文件名称</param> /// <returns>文本信息</returns> public static string ReadTxt(string filepath, string filename) { StringBuilder sb = new StringBuilder(""); //StreamReader sr = new StreamReader(filepath + filename); ; StreamReader sr = new StreamReader(filepath + filename, Encoding.GetEncoding("GB2312")); string line; while ((line = sr.ReadLine()) != null) { sb.AppendLine(line); } sr.Close(); sr.Dispose(); return sb.ToString(); } #endregion #endregion #region 文件删除 /// <summary> /// 删除文件操作 /// </summary> /// <param name="filePath">文件路径</param> /// <param name="fileName">文件名称</param> public static void DeleteFile(string filePath, string fileName) { string destinationFile = filePath + fileName; //如果文件存在,删除文件 if (File.Exists(destinationFile)) { FileInfo fi = new FileInfo(destinationFile); if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1) fi.Attributes = FileAttributes.Normal; File.Delete(destinationFile); } } #endregion /// <summary> /// 拷贝文件 /// </summary> /// <param name="fromFilePath">文件的路径</param> /// <param name="toFilePath">文件要拷贝到的路径</param> private bool CopyFile(string fromFilePath, string toFilePath) { try { if (File.Exists(fromFilePath)) { if (File.Exists(toFilePath)) { File.Delete(toFilePath); } File.Move(fromFilePath, toFilePath); return true; } return false; } catch { return false; } }
#region 读取csv文件 /// <summary> /// 读取CVS文件 /// </summary> /// <param name="path">文件路径</param> /// <param name="name">文件名称</param> /// <returns>DataTable</returns> public static DataTable ReadCVS(string filepath, string filename) { //string cvsDir = filepath;//要读取的CVS路径 DataTable dt = new DataTable(); if (filename.Trim().ToUpper().EndsWith("CSV"))//判断所要读取的扩展名 { string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='text;HDR=NO;FMT=Delimited'";//有列的读取 string commandText = "select * from [" + filename + "]";//SQL语句 OleDbConnection olconn = new OleDbConnection(connStr); olconn.Open(); OleDbDataAdapter odp = new OleDbDataAdapter(commandText, olconn); odp.Fill(dt); olconn.Close(); odp.Dispose(); olconn.Dispose(); } return dt; } #endregion #region 读取xls文件 /// <summary> /// 读取Excel文件 /// </summary> /// <param name="filepath">文件路径</param> /// <param name="filename">文件名称</param> /// <returns>DataTable</returns> public static DataTable ReadExcel(string filepath, string filename) { DataTable dt = new DataTable(); if (filename.Trim().ToUpper().EndsWith("XLS")) { string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1'"; string commandText = "select * from [" + filename + "]"; OleDbConnection olconn = new OleDbConnection(connStr); olconn.Open(); OleDbDataAdapter odp = new OleDbDataAdapter(commandText, olconn); odp.Fill(dt); olconn.Close(); odp.Dispose(); olconn.Dispose(); } return dt; } #endregion #region 读取txt文件 /// <summary> /// 读取Txt文本文件 /// </summary> /// <param name="filepath">文件路径</param> /// <param name="filename">文件名称</param> /// <returns>文本信息</returns> public static string ReadTxt(string filepath, string filename) { StringBuilder sb = new StringBuilder(""); //StreamReader sr = new StreamReader(filepath + filename); ; StreamReader sr = new StreamReader(filepath + filename, Encoding.GetEncoding("GB2312")); string line; while ((line = sr.ReadLine()) != null) { sb.AppendLine(line); } sr.Close(); sr.Dispose(); return sb.ToString(); } #endregion #endregion #region 文件删除 /// <summary> /// 删除文件操作 /// </summary> /// <param name="filePath">文件路径</param> /// <param name="fileName">文件名称</param> public static void DeleteFile(string filePath, string fileName) { string destinationFile = filePath + fileName; //如果文件存在,删除文件 if (File.Exists(destinationFile)) { FileInfo fi = new FileInfo(destinationFile); if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1) fi.Attributes = FileAttributes.Normal; File.Delete(destinationFile); } } #endregion /// <summary> /// 拷贝文件 /// </summary> /// <param name="fromFilePath">文件的路径</param> /// <param name="toFilePath">文件要拷贝到的路径</param> private bool CopyFile(string fromFilePath, string toFilePath) { try { if (File.Exists(fromFilePath)) { if (File.Exists(toFilePath)) { File.Delete(toFilePath); } File.Move(fromFilePath, toFilePath); return true; } return false; } catch { return false; } }
|
请发表评论