C#第三次作业:Excel数据读取 及 HTML文件初步
来源:互联网 发布:淘宝实时访客 编辑:程序博客网 时间:2024/04/30 01:57
第一部分:作业要求(完整要求见作业要求)
目标2:C#读取Excel文件,并保存成HTML格式(90分)。
第二部分:程序说明及代码
生成HTML文件程序excelToHtml
1.功能:
1.1窗体有2个控件(dataGridView,按钮);
1.2当按下按钮时候,程序出现打开“打开文件”对话框,可以打开.xls和.xlsx文件,本例是打开D盘的ex03_demo.xls文件;
1.3程序把ex03_demo.xls文件的内容读取出来并显示在dataGridView控件中;
1.4程序最后会根据ex03_demo.xls文件内容,把“姓名”和“作业网址”,转换为HTML识别的链接形式,相应的HTML文件名为 ex03_demo.html;
1.5打开该html文件,能链接每个同学的网址。
三、代码实现
目标2:C#读取Excel文件,并保存成HTML格式(90分)。
第二部分:程序说明及代码
生成HTML文件程序excelToHtml
1.功能:
1.1窗体有2个控件(dataGridView,按钮);
1.2当按下按钮时候,程序出现打开“打开文件”对话框,可以打开.xls和.xlsx文件,本例是打开D盘的ex03_demo.xls文件;
1.3程序把ex03_demo.xls文件的内容读取出来并显示在dataGridView控件中;
1.4程序最后会根据ex03_demo.xls文件内容,把“姓名”和“作业网址”,转换为HTML识别的链接形式,相应的HTML文件名为 ex03_demo.html;
1.5打开该html文件,能链接每个同学的网址。
三、代码实现
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;using System.Data.OleDb; using System.IO;namespace ReadandWrite { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } public DataSet ExcelToDS(string path) {//建立连接参数 string strConn =//“Provider = value”子句是必需的; "Provider=Microsoft.Jet.OLEDB.4.0;" //Data Source 是数据路径,注意path前有@; + "Data Source=" + @path + ";"//Extended Properties为扩展属性,有HDR和IMEX两个参数, + "Extended Properties=Excel 8.0;";//new oleDbConnection("Provider=value;Data Source=path;")/*步骤:1、连接数据库:OleDbConnection conn 2、打开数据裤:conn.open()3、利用OleDbDataAdapter类的构建方法获取数据库中的数据*/ OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); string strExcel = "";strExcel = "select * from [sheet1$]";//表示一组数据命令和一个数据库连接,它们用于填充 DataSet 和更新数据源 OleDbDataAdapter myCommand = null;myCommand = new OleDbDataAdapter(strExcel, strConn); //DataSet 和 DataTable的区别DataSet ds = null; DataTable table1 = new DataTable(); ds = new DataSet();//数据填充 myCommand.Fill(table1); myCommand.Fill(ds); dataGridView1.DataSource = table1; return ds; } private void button1_Click(object sender, EventArgs e) { OpenFileDialog openfile = new OpenFileDialog(); openfile.Filter = "工作薄(*.xls)|*.xls|所有文件(*.*)|*.*|工作薄(*.xlsx)|*.xlsx"; if (openfile.FilterIndex == 1 && openfile.ShowDialog() == DialogResult.OK) { DataSet dataSet = ExcelToDS(openfile.FileName); String name = ""; int count = 0; using (StreamWriter sw = new StreamWriter("D:/homework.html", false, Encoding.Default)) { sw.WriteLine("<html>"); sw.WriteLine("<body>"); foreach (DataTable table in dataSet.Tables) { foreach (DataRow row in table.Rows) { foreach (DataColumn column in table.Columns) { //Console.WriteLine(row[column]); if (column.ColumnName == "姓名") { name = row[column].ToString(); } if (column.ColumnName == "作业网址") {//将文件导出至html文件中//html文件超链接为<a href="url">文件名<a/> sw.WriteLine("<a href=\""+row[column].ToString()+" \"> "+name+"<a/>";"); } } } }sw.WriteLine("</body>"); sw.WriteLine("</html>"); } } }}}
2、打开界面
3、功能实现
4、文件生成
5、html文件
五、实验心得
本次实验让我学会了数据库的连接,一开始不懂就不断地百度,其中遇到两个问题,第一、连接数据库的方法并不只有这一种,还有其他的方式,我认真比对过另外的两种连接办法,相比之下,我所运用的方法适合于大量的数据,但效率并不高,因此在连接数据库的处理上并没有被广泛的使用,这里有其他相关的<a href="http://blog.sina.com.cn/s/blog_3e8011bf0101emk2.html">连接方式<a/>,第二个问题,在连接数据库所提供的方法,其实oleDbConnection的构建方法不仅仅上述的三个参数,还有其他的参数限制,我花了比较多的时间对参数理解和使用上,对连接数据库有了新的想法和思路。
0 0
- C#第三次作业:Excel数据读取 及 HTML文件初步
- 第三次C#作业-Excel数据读取及HTML文件初步
- C#第三次作业 Excel数据读取 及 HTML文件初步
- C#第三次作业:Excel数据读取 及 HTML文件初步
- C#第三次作业 Excel数据读取 及 HTML文件初步
- C#第三次作业 Excel数据读取 及 HTML文件初步
- 第三次作业:Excel数据读取 及 HTML文件初步
- c#第三次作业——Excel数据读取 及 HTML文件初步(目标三)
- C#第三次作业—目标二(Excel数据读取 及 HTML文件初步)
- C#第三次作业--c#读取Excel文件
- C#第三次作业-读取excel文件
- c#第三次作业 C#读取Excel文件,并保存成HTML格式
- C#读取Excel文件(第三次C#作业)
- C#第三次作业(1):读取excel文件
- 《C#程序设计》第三次作业 C#读取Excel文件,并保存为文本文件
- C#第三次作业:在c#中导入excel,并生成html文件
- 第三次作业——用C#读取Excle文件
- C# OLEDB方式读取Excel文件数据
- ORACLE基础操作【02】 -->split分区表
- PHP多个版本的分析解释
- 依赖倒置(DIP),控制反转(IoC)与依赖注入(DI)
- 20个非常有用的PHP类库
- PHP常用组件下载列表
- C#第三次作业:Excel数据读取 及 HTML文件初步
- 【Spring源码解析】之IOC容器在Web容器中的启动
- 【BZOJ 1912】 [Apio2010]patrol 巡逻
- angular本地、远程数据循环
- AngularJS的五个超酷特性
- 现在主流的免费手机号码归属地查询api接口
- 【BZOJ 1178】 [Apio2009]CONVENTION会议中心
- 【BZOJ 1774】 [Usaco2009 Dec]Toll 过路费
- mysql数据库修复