导入word数据
public static List<FL> ImportDOC(object fileName,out StringBuilder meg) {
List<FL> flist = new List<FL>();
Application app = new Application();
Document doc = new Document();
meg = new StringBuilder();
try {
#region 导入word数据
//打开文件 if (app.Documents.Count > 0)
{ //if (MessageBox.Show("已经打开了一个word文档,你想关闭重新打开该文档吗?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
//{
// object unknow = Type.Missing;
// doc = app.ActiveDocument;
// if (MessageBox.Show("你想保存吗?", "保存", MessageBoxButtons.YesNo) == DialogResult.Yes)
// {
// app.ActiveDocument.Save();
// }
// app.ActiveDocument.Close(ref unknow, ref unknow, ref unknow);
// app.Visible = false;
//}
//else
//{
// return;
//}
}
else {
object unknow = Type.Missing;
app.Visible = true;
doc = app.Documents.Open(ref fileName,
ref unknow, ref unknow, ref unknow, ref unknow, ref unknow,
ref unknow, ref unknow, ref unknow, ref unknow, ref unknow,
ref unknow, ref unknow, ref unknow, ref unknow, ref unknow);
}
#region 读取数据
int docCount=doc.Paragraphs.Count;//world数据行数
if (docCount> 0) {
f f = new f();
for (int i = 1; i < docCount; i++) {
string linedate=doc.Paragraphs[i].Range.Text.Trim();
if (linedate.Contains("<MessageType>"))
{
if (!linedate.Contains("N")) {
meg.Append("文件类型不对");//文件类型不对不予理会
break;
}
}
if (!string.IsNullOrEmpty(getlinedata(linedate, "CallSign")))
{ f.FLIGHTID = getlinedata(linedate, "CallSign");
}
if (!string.IsNullOrEmpty(getlinedata(linedate, "ScheduleDate")))
{
f.SCHEDULEDATE =getlinedata(linedate, "ScheduleDate");
}
if (linedate.Contains("</Item>"))
{
flist.Add(f);
f = new f();
}
}
}
#endregion
//关闭文件
object unknow1 = Type.Missing;
object saveChanges1 = WdSaveOptions.wdPromptToSaveChanges;
app.ActiveDocument.Close(ref saveChanges1, ref unknow1, ref unknow1);
//关闭程序
object unknow2 = Type.Missing;
object saveChanges2 = WdSaveOptions.wdSaveChanges;
app.Quit(ref saveChanges2, ref unknow2, ref unknow2);
#endregion
}
catch (Exception e)
{
meg.Append(e.Message);
}
return flist;
//string text2 = Regex.Replace(wordDoc.Content.Text, @"(a|t|n|s+)", ""); //Regex.Replace(input, @"(a|t|n|s+)", "") }
public static string getlinedata(string linedate,string oldstr) { string str=string.Empty; try { if (linedate.Contains("<" + oldstr + ">")) { str = linedate.Replace("<"+oldstr+">", string.Empty).Replace("</"+oldstr+">", string.Empty); } } catch (Exception e) { } return str; } //public static void replaceChar() //{ // try // { // object replaceAll =WdReplace.wdReplaceAll; // object missing = Type.Missing;
// app.Selection.Find.ClearFormatting(); // app.Selection.Find.Text = "^l";
// app.Selection.Find.Replacement.ClearFormatting(); // app.Selection.Find.Replacement.Text = "^p";
// app.Selection.Find.Execute( // ref missing, ref missing, ref missing, ref missing, ref missing, // ref missing, ref missing, ref missing, ref missing, ref missing, // ref replaceAll, ref missing, ref missing, ref missing, ref missing); // } // catch (Exception e) // { // //MessageBox.Show("文档出现错误,请重新操作"); // } // }
导入word数据的更多相关文章
- 【转】 如何导入excel数据到数据库,并解决导入时间格式问题
在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...
- 可以将化学结构NMR图谱这样导入Word
在化学各个领域中,大家常常会用到ChemDraw化学绘图软件来绘制各种图形,ChemDraw因其出色的功能在全球范围内深受欢迎,但是一些用户朋友对于一些功能还不是很了解,需要通过一些教程来了解如何操作 ...
- csv读入数据,用julia/matplotlib/pyplot 画矢量图导入word中
这是是用julia来实现画图.julia有三个画图库:Winston.Gadfly.PyPlot 这里用的是pyplot,事实上他是基于matplotlib的 1.首先在juno里安装两个库 juno ...
- Java POI导入word, 带图片
1.导入文件示例,word中简历表格模板 2.代码示例分两部分,一部分读取图片 /** * 导入word(基本信息,word格式) * @param staffId * @param baseInfo ...
- 使用VUE+SpringBoot+EasyExcel 整合导入导出数据
使用VUE+SpringBoot+EasyExcel 整合导入导出数据 创建一个普通的maven项目即可 项目目录结构 1 前端 存放在resources/static 下 index.html &l ...
- CRL快速开发框架系列教程九(导入/导出数据)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- BCP导出导入大容量数据实践
前言 SQL SERVER提供多种不同的数据导出导入的工具,也可以编写SQL脚本,使用存储过程,生成所需的数据文件,甚至可以生成包含SQL语句和数据的脚本文件.各有优缺点,以适用不同的需求.下面介绍大 ...
- SQL Server服务器上需要导入Excel数据的必要条件
SQL Server服务器上需要导入Excel数据,必须安装2007 Office system 驱动程序:数据连接组件,或者Access2010的数据库引擎可再发行程序包,这样就不必在服务器上装Ex ...
- PLSQL Developer导入Excel数据
LSQL Developer导入Excel数据 最近处理将Excel数据导入Oracle的工作比较多.之前都是采用Sqlldr命令行导入的方式处理.每次导入不同格式的Excel表数据,都需要先把Exc ...
随机推荐
- linux笔记_20150825_linux有什么好处
那么多人在用,linux到底有毛好处? 其实我也不太清楚,有人说免费,可是大家用windows也不要钱的.我想在天朝,要钱的软件不多吧.一个子也不用花.真心感谢为人民服务的那些大牛. 现在,除了在ub ...
- 大数据处理-bitmap是个神马东西
1. Bit Map算法简介 所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省. 2. B ...
- hive 面试题 转载
转自:http://blog.csdn.net/ningguixin/article/details/12852051 有一张很大的表:TRLOG该表大概有2T左右TRLOG:CREATE TABLE ...
- 数往知来 CSS<十二>
div+css基础 一.外部样式<!--外部样式可以使网页与样式分离,分工处理 1.写网页,主要提供内容,一般都会有固定的结构,具有id等属性的标签包括特定的内容 2.根据结构写样式另存为css ...
- windows创建虚拟界面
定义 VDesktopName: PAnsiChar; //虚拟桌面名 VDesktop: HDESK; //虚拟桌面 创建 VDesktopName := 'MYDESK'; VDesktop ...
- Google软件测试
google测试相关的职位有三类:软件测试开发工程师.测试工程师以及测试工程经理. 软件测试开发工程师也是一个开发角色,只是工作重心在可测试性和通用测试框架上.他们参与设计评审,非常近距离地观察代码质 ...
- QS之Intro
公司里用Questa Sim做仿真,其实跟ModelSim差不多,总结常用的命令如下. 1 启动 vsim -gui 2 编译 -- VCOM vcom [-2008 | -2002 | -93 | ...
- AutoCompleteTextView使用 监听
AutoCompleteTextView使用 An editable text view that shows completion suggestions automatically while t ...
- python日志模块logging
python日志模块logging 1. 基础用法 python提供了一个标准的日志接口,就是logging模块.日志级别有DEBUG.INFO.WARNING.ERROR.CRITICAL五种( ...
- python异常以及面向对象编程
一.面向对象 需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__na ...