using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; using System.IO;
using Microsoft.Office.Interop.Excel;
using System.Reflection; namespace ReadTextToExcel
{
public partial class FrmReadTxtToExcel : Form
{
public FrmReadTxtToExcel()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
this.ofdRead.ShowDialog();
this.tbxReadFile.Text = this.ofdRead.FileName; } private void FrmReadTxtToExcel_Load(object sender, EventArgs e)
{ } private void btnWrite_Click(object sender, EventArgs e)
{
this.ofdWrite.ShowDialog();
this.tbxWriteFile.Text = this.ofdWrite.FileName;
} private void btnOperate_Click(object sender, EventArgs e)
{
FileStream fs = new FileStream(this.tbxReadFile.Text.ToString(), FileMode.Open, FileAccess.Read);
StreamReader sr = new StreamReader(fs,System.Text.Encoding.GetEncoding("gb2312"));
Microsoft.Office.Interop.Excel.Application xApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
xApp.Visible = true;
//得到WorkBook对象, 可以用两种方式之一: 下面的是打开已有的文件
Microsoft.Office.Interop.Excel.Workbook xBook = xApp.Workbooks._Open(this.tbxWriteFile.Text.ToString(),
Missing.Value, Missing.Value, Missing.Value, Missing.Value
, Missing.Value, Missing.Value, Missing.Value, Missing.Value
, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
//xBook=xApp.Workbooks.Add(Missing.Value);//新建文件的代码 //指定要操作的Sheet,如下两种方式
Microsoft.Office.Interop.Excel.Worksheet xSheet = (Microsoft.Office.Interop.Excel.Worksheet)xBook.Sheets[];
//Excel.Worksheet xSheet=(Excel.Worksheet)xApp.ActiveSheet; sr.BaseStream.Seek(, SeekOrigin.Begin); //定位操作点,begin 是一个参考点
sr.BaseStream.Seek(, SeekOrigin.Begin); //读一下,看看文件内有没有内容,为下一步循环 提供判断依据
string str = sr.ReadLine();//如果 文件有内容
int index = ;
while (str != null)
{
//输出字符串,str 在上面已经定义了 读入一行字符
this.textBox3.Text = textBox3.Text.ToString() + str; //写入数据
Microsoft.Office.Interop.Excel.Range rng3 = xSheet.get_Range(Convert.ToString("A"+index), Missing.Value);
rng3.Value2 = str;
//rng3.Interior.ColorIndex = 6; //设置Range的背景色
index++;
str = sr.ReadLine();
}
//C#读取TXT文件之后关闭文件,注意顺序,先对文件内部进行关闭,然后才是文件
sr.Close();
fs.Close(); //保存方式一:保存WorkBook
//xBook.SaveAs(this.textBox2.Text.ToString(),
//Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
//Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value,
//Missing.Value, Missing.Value); //保存方式二
xBook.Save();
xSheet = null;
xBook = null;
xApp.Quit(); //这一句是非常重要的,否则Excel对象不能从内存中退出
xApp = null;
} private void btnExit_Click(object sender, EventArgs e)
{
this.Dispose();
System.Windows.Forms.Application.Exit();
} }
}

C# 读取txt文本内容写入到excel的更多相关文章

  1. C++ 读取txt文本内容,并将结果保存到新文本

    循序渐进学习读文件 // readFile.cpp : 定义控制台应用程序的入口点. #include "stdafx.h" #include <iostream> # ...

  2. python3+xlwt 读取txt信息并写入到excel中

    # coding = utf-8 import os import xlwt import re def readTxt_toExcel(valueList, Pathlist): workbook ...

  3. PHP将富文本编辑后的内容,去除样式图片等只保留txt文本内容

    1.从数据库读取富文本内容样式如下: <p style=";text-indent: 0;padding: 0;line-height: 26px"><span ...

  4. PHP将富文本内容去除各类样式图片等只保留txt文本内容(作用于SEO的description)

    1.从数据库读取富文本内容样式如下: <p style=";text-indent: 0;padding: 0;line-height: 26px"><span ...

  5. Java HashSet对txt文本内容去重(统计小说用过的字或字数)

    Java HashSet对txt文本内容去重(统计小说用过的字或字数) 基本思路: 1.字节流读需要去重的txt文本.(展示demo为当前workspace下名为utf-8.txt的文本) 2.对读取 ...

  6. C#异步将文本内容写入文件

    在C#/.NET中,将文本内容写入文件最简单的方法是调用 File.WriteAllText() 方法,但这个方法没有异步的实现,要想用异步,只能改用有些复杂的 FileStream.WriteAsy ...

  7. java读取txt文件内容

    package read; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; public ...

  8. .Net ->> iTextSharp工具读取PDF文本内容

    分享一个开源的C#DLL,可以读取PDF文本内容. 地址:http://sourceforge.net/projects/itextsharp/ 这里还有相关的链接:http://www.codepr ...

  9. python读取、写入txt文本内容

    转载:https://blog.csdn.net/qq_37828488/article/details/100024924 python常用的读取文件函数有三种read().readline().r ...

随机推荐

  1. VS2010中 为图片添加背景图片

    很简单的东西,嘿嘿 void CTestDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // 用于绘制的设备上下文 SendMessage( ...

  2. extjs动态树 动态grid 动态列

    由于项目需要做一个动态的extjs树.列等等,简而言之,就是一个都是动态的加载功能, 自己琢磨了半天,查各种资料,弄了将近两个星期,终于做出来了 首先,想看表结构,我的这个功能需要主从两张表来支持 代 ...

  3. 查看当前hadoop的版本号

    查看当前hadoop的版本号: 2015-01-20 20:58:03

  4. python导入上级目录中的模块

    python导入同级别模块很方便: import xxx 要导入下级目录页挺方便,需要在下级目录中写一个__init__.py文件 from dirname import xxx 要导入上级目录,可以 ...

  5. leecode Binary Tree Level Order Traversal II java

    做完这道题,只能说基本功很重要,数组中套数组就不会用了,过几天吧1做了,看自己到底等没. https://oj.leetcode.com/problems/binary-tree-level-orde ...

  6. zabbix邮件告警

    Zabbix邮件告警看了很多文档,写的那叫一个蛋疼,明明没有发出去邮件,硬要糊弄观众,我也跟着被糊弄. 操作系统环境: CentOS 5.5 x84_64位 Zabbix版本2.2.3 Web服务器: ...

  7. Spark Repl过程分析(源码)

  8. ASP.NET- Web.Config配置大文件上传

    在web.config中的<system.web></system.web>内加入如下代码: <httpRuntime executionTimeout="60 ...

  9. Hibernate查询方法总结

    1. HQL查询 HQL是Hiberante官方推荐的Hibernate检索方式,它使用类似SQL的查询语言,以面向对象的方式从数据库中查询.可以使用HQL查询具有继承.多态和关 联关系的数据.在检索 ...

  10. 如何解决因为找不到Notepad++的安装路径而导致的不能更新CS-Script的问题

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何解决因为找不到Notepad++的安装路径而导致的不能更新CS-Script的问题.