求C#在winform界面下读写EXCEL数据以及读写文本文件的代码

时间:2022-08-28 10:03:06
1、读出某EXCEL数据,写入sql server数据库。
2、从sql server数据库读出数据写入EXCEL.
3、读出某个文本文件,写入sql server数据库。
4、从sql server数据库读出数据写入文本文件

数据库表为table1(t1 char(5),t2 decimal(5,2))


excel :  

a    5.2
b    6.2


文本文件
a005.2
b006.2
 

8 个解决方案

#3


谢谢二位帮助,请问操作文本文件的例子,以及sql server 数据写入excel的例子有吗

#4


操作文本文件参考:StreamWriter、StreamReader
Excel本身也是个数据库,SQL语句select、insert into、update、delete同样是成立的,写入Excel发一条insert  
into语句。

#5


操作EXCEL建议你用NPOI.dll,上网搜一下,绝对比微软的那个好用,微软的那个对环境要求太高了。

#6



        #region 导出txt格式数据
        /// <summary>
        /// 导出txt格式数据
        /// </summary>
        /// <param name="ds">待导出数据集</param>
           private void ExportTxt(DataSet ds)
            {
                try
                {
                    int count = ds.Tables[0].Rows.Count;//得到数据的行数
                    string[] rowsstr = new string[count];
                    for (int j = 0; j < count; j++)
                    {
                        DataRow dr = ds.Tables[0].Rows[j];
                        for (int i = 0; i < dr.ItemArray.Length; i++)
                        {
                            rowsstr[j] += dr.ItemArray[i].ToString();
                            rowsstr[j] += "\t" + "\t";
                        }
                        rowsstr[j] += "\n";
                    }
                    string filename = GetAppPath() + "txt" + DateTime.Today.ToString("yyyyMMdd") + ".txt";
                    FileStream fs = new FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write);
                    StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));//通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码
                    sw.Flush();
                    sw.BaseStream.Seek(0, SeekOrigin.Begin);
                    for (int i = 0; i < count; i++)
                    {
                        sw.WriteLine(rowsstr[i]);

                    }
                    sw.Flush();
                    sw.Close();
                }
               catch(Exception errr)
                {

                    WriteLog(errr.ToString());

                }
                
            }

#7


       #region 操作系统常用信息获取
        /// <summary>
        /// 获取当前路径
        /// </summary>
        /// <returns></returns>
        public static string GetAppPath()
        {
            string path = AppDomain.CurrentDomain.BaseDirectory + @"\";
            return path.Replace(@"\\", @"\");
        }
        #endregion

#8


谢谢大家了,我先试下。如果不懂再来请教大家。

#1


#2


#3


谢谢二位帮助,请问操作文本文件的例子,以及sql server 数据写入excel的例子有吗

#4


操作文本文件参考:StreamWriter、StreamReader
Excel本身也是个数据库,SQL语句select、insert into、update、delete同样是成立的,写入Excel发一条insert  
into语句。

#5


操作EXCEL建议你用NPOI.dll,上网搜一下,绝对比微软的那个好用,微软的那个对环境要求太高了。

#6



        #region 导出txt格式数据
        /// <summary>
        /// 导出txt格式数据
        /// </summary>
        /// <param name="ds">待导出数据集</param>
           private void ExportTxt(DataSet ds)
            {
                try
                {
                    int count = ds.Tables[0].Rows.Count;//得到数据的行数
                    string[] rowsstr = new string[count];
                    for (int j = 0; j < count; j++)
                    {
                        DataRow dr = ds.Tables[0].Rows[j];
                        for (int i = 0; i < dr.ItemArray.Length; i++)
                        {
                            rowsstr[j] += dr.ItemArray[i].ToString();
                            rowsstr[j] += "\t" + "\t";
                        }
                        rowsstr[j] += "\n";
                    }
                    string filename = GetAppPath() + "txt" + DateTime.Today.ToString("yyyyMMdd") + ".txt";
                    FileStream fs = new FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write);
                    StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));//通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码
                    sw.Flush();
                    sw.BaseStream.Seek(0, SeekOrigin.Begin);
                    for (int i = 0; i < count; i++)
                    {
                        sw.WriteLine(rowsstr[i]);

                    }
                    sw.Flush();
                    sw.Close();
                }
               catch(Exception errr)
                {

                    WriteLog(errr.ToString());

                }
                
            }

#7


       #region 操作系统常用信息获取
        /// <summary>
        /// 获取当前路径
        /// </summary>
        /// <returns></returns>
        public static string GetAppPath()
        {
            string path = AppDomain.CurrentDomain.BaseDirectory + @"\";
            return path.Replace(@"\\", @"\");
        }
        #endregion

#8


谢谢大家了,我先试下。如果不懂再来请教大家。