上一章我们是获取它的数据这节我们讲的是怎么将获取到的数据保存到本地的TXT文本。这一节的代码均是由上一节的代码替换而来的,首先我们要新建一个东星的文件夹,以方便我们保存获取到的文本。将它保存在ê盘里。
具体代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.OleDb;
using System.Data;
using System.IO;
namespace ConsoleApplication6
{
class Program
{
static string path = "E:\\tose\\";
public static DataSet ExcelToDataSet(string filename) //函数用来读取一个excel文件到DataSet集中
{
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Extended Properties=Excel 8.0;" +
"data source=" + filename;
OleDbConnection myConn = new OleDbConnection(strCon);
string strCom = " SELECT * FROM [Sheet1$]"; //"Sheet1"为表单标签页名
DataSet myDataSet = new DataSet();
myConn.Open();
OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);
DataSet ds;
ds = new DataSet();
myCommand.Fill(ds);
myConn.Close();
return ds;
}
static void Main(string[] args)
{
DataSet ds = ExcelToDataSet("D:\\get.xls"); //括号中参数为文件地址
for (int i = 0; i < 5; i++)
{
double j = i + 1;
Console.WriteLine("counts:" + ds.Tables[0].Rows.Count, j.ToString());
string str_ID = ds.Tables[0].Rows[i]["周一"].ToString(); //Rows[i]["col1"]表示i行"col1"字段
StreamWriter file = new StreamWriter(path + str_ID + ".txt", false, Encoding.UTF8);
double t = j * 100;
file.WriteLine("====================");
file.WriteLine(Math.Round(System.Convert.ToDouble(ds.Tables[0].Rows[i]["周二"].ToString()), 1));
file.WriteLine(Math.Round(System.Convert.ToDouble(ds.Tables[0].Rows[i]["周三"].ToString()), 2));
file.WriteLine(Math.Round(System.Convert.ToDouble(ds.Tables[0].Rows[i]["周四"].ToString()) * 100, 2) + "%");
file.WriteLine(Math.Round(System.Convert.ToDouble(ds.Tables[0].Rows[i]["周五"].ToString()), 1));
file.Close();
}
Console.WriteLine("Hello world, 前面正确执行...");
Console.ReadKey();
}
}
}
假如出现缺失指引,找到 StreamWriter的,给他添加上使用指引就可以了。上面的内容没有多大改变,主要是里面的修改首先大家看到了我们新建的东星文件夹加入进去了,其次就是获取表格中的指定ID,数学式轮,他的作用是保留小数点后几位,大家可以看到2或者1那就保留对应的小数点后几位,数学的用法大家可以看一下,它是有不同的对应点。上面周五这些代表的就是每列的表头去掉获添加也可以在文本中显示出来,代码的含义还是比较简单,消化一下,大家就可以自己做了,下面就是我们的获取信息。