最近需要将工作中产生的一些数据发到excel表格内进行处理,因此记录下解决问题的思路
一:如何创建一个excel文件
使用FileStream类,代码如下
string fileDir = "e:\\VSWorkSpace\\TryForm\\TryForm\\bin\\Debug\\";
string fileName = fileDir + DateTime.Now.ToLongDateString() +DateTime.Now.ToLongTimeString().Replace(":", "-") + "数据输出" + ".xls";
FileStream dataFile = new FileStream(fileName, FileMode.Append, FileAccess.Write);
最后一句是建立了一个新的文件,名称为fileName变量所储存的字符串,打开方式为打开并跳转至末尾,读取方式为只写。
一般使用该方式生成的文件是没有类型的,因此需要在文件名内加上".xls"人为定义成excel文件
二:如何输出数据到文件中
使用StreamWriter类,代码如下
string data = "1\t2";
StreamWriter writer = new StreamWriter(dataFile);
writer.Write(data);
writer.Flush();
writer.Close();
随意定义了一个数据,里面是字符串"1 2"
然后定义了一个StreamWriter类,使用的构造函数是指,该流写入的对象是dataFile所指的文件
然后调用三个方法,将数据写入。
ps:以上两个类都是定义在System.IO命名空间内
三:向缓存中输入数据
使用StringBuilder类,代码如下
StringBuilder sb = new StringBuilder("");
sb.Append();
Append()方法的作用是,在该对象的末尾加上需要的字符串。例如可以使用
sb.Append(Environment.NewLine); 来添加一个代表换行的字符串