精华内容
下载资源
问答
  • WORD:提取word文档中目录

    千次阅读 2014-04-25 14:44:17
    /// 将要提取目录文档 /// 新建文档 /// 文档范围 private void WordToWord(Word.Document P_wd, Word.Document P_document, Word.Range rg) { object P_start = System.Reflection.Missing.Value; object ...
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Word = Microsoft.Office.Interop.Word;
    using System.Threading;
    using office = Microsoft.Office.Core;
    using System.Reflection;
    using System.IO;
    
    public partial class _Default : System.Web.UI.Page
    {
        private Word.Application G_wa;//定义Word应用程序字段
        private object G_missing = System.Reflection.Missing.Value;//定义G_missing字段并添加引用
    
        protected void Page_Load(object sender, EventArgs e)
        {
            txtOpenPath.Text = Server.MapPath("~/File/word.doc");//打开Word文档位置
            txtSavePath.Text = string.Format(@"{0}\{1}", Server.MapPath("~/File"), DateTime.Now.ToString("yyyy年M月d日h时m分s秒fff毫秒") + ".doc");
        }
    
        protected void btnNew_Click(object sender, EventArgs e)
        {
            G_wa = new Microsoft.Office.Interop.Word.Application();//创建应用程序对象
            G_wa.Visible = false;
            object G_FilePath = txtOpenPath.Text;
            //打开Word文档
            Word.Document P_wd = G_wa.Documents.Open(
               ref G_FilePath, ref G_missing, ref G_missing, ref G_missing, ref G_missing,
               ref G_missing, ref G_missing, ref G_missing, ref G_missing, ref G_missing,
               ref G_missing, ref G_missing, ref G_missing, ref G_missing, ref G_missing,
               ref G_missing);
            Word.Document P_document = G_wa.Documents.Add(ref G_missing, ref G_missing, ref G_missing, ref G_missing);//添加新的Word文档
            object P_start = 0;//定义范围的开始位置
            object p_end = 0;//定义范围的结束位置
            Word.Range rg = P_wd.Range(ref P_start, ref p_end);//得到文档的范围
            WordToWord(P_wd, P_document, rg);//将目录提取到新文档中
            object P_str_path = txtSavePath.Text;//设置保存的文件名称
            //保存Word文件
            P_document.SaveAs(
                ref P_str_path,
                ref G_missing, ref G_missing, ref G_missing, ref G_missing,
                ref G_missing, ref G_missing, ref G_missing, ref G_missing,
                ref G_missing, ref G_missing, ref G_missing, ref G_missing,
                ref G_missing, ref G_missing, ref G_missing);
            object P_Save = false;//设置参数为不保存
            ((Word._Application)G_wa.Application).Quit(ref P_Save, ref G_missing, ref G_missing);//退出应用程序
            Response.Write("<script>alert('目录已经提取完成!');</script>");
        }
    
        /// <summary>
        /// 将目录提取到新文档中
        /// </summary>
        /// <param name="P_wd">将要提取目录的文档</param>
        /// <param name="P_document">新建文档</param>
        /// <param name="rg">文档范围</param>
        private void WordToWord(Word.Document P_wd, Word.Document P_document, Word.Range rg)
        {
            object P_start = System.Reflection.Missing.Value;
            object p_end = System.Reflection.Missing.Value;
            object P_UseHeadingStyles = true;//是否使用内置样式创建目录
            object P_UpperHeadingLevel = 1;//目录起始的标题级别
            object P_LowerHeadingLevel = 9;//目录结束的标题级别
            object P_UseFields = false;//是否使用TC(目录项)创建目录
            object P_TableID = 1;//单字母标识符,用于根据TC域创建目录
            object P_RightAlignPageNumbers = false;//目录是否右边距对齐
            object P_IncludePageNumbers = false;//目录中是否包含页码
            object P_AddedStyles = null;//目录其它样式的字符串名称
            object P_UseHyperlinks = false;//是否将文档发布到WEB
            object P_HidePageNumbersInWeb = false;//目录中的页码是否被隐藏
            P_wd.TablesOfContents.Add(rg, ref P_UseHeadingStyles,//将提取的目录插入到文档的开始位置
                ref P_UpperHeadingLevel, ref P_LowerHeadingLevel,
                ref P_UseFields, ref P_TableID, ref P_RightAlignPageNumbers,
                ref P_IncludePageNumbers, ref P_AddedStyles, ref P_UseHyperlinks,
                ref P_HidePageNumbersInWeb, ref G_missing);
            if (P_wd.Fields.Count >= 1)
            {
                P_wd.Paragraphs[1].Range.Cut();//剪切文档开始位置的目录信息
                P_document.Range(ref P_start, ref p_end).Paste();//将目录信息粘贴到新文档
            }
        }
    
    
    }
    

    展开全文
  • 利用java从docx文档中提取文本内容

    千次阅读 2018-06-18 21:26:30
    利用java从docx文档中提取文本内容 使用Apache的第三方jar包,地址为https://poi.apache.org/ docx文档内容如图: 目录结构: 每个文件夹的名称为日期加上来源,例如:20180618医院,每个docx文档的名称是被...

    利用java从docx文档中提取文本内容

    使用Apache的第三方jar包,地址为https://poi.apache.org/
    docx文档内容如图:
    这里写图片描述
    目录结构:
    这里写图片描述
    每个文件夹的名称为日期加上来源,例如:20180618医院,每个docx文档的名称是被试的姓名和来源地,例如:小明-xx社区
    代码如下:
    MriReportService.java

    package services;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.LinkedList;
    import java.util.regex.Pattern;
    
    public class MriReportService {
    
        public static String[] findYearAndSource(File file) {
            String[] result = new String[2];
            // 日期
            String dateStr = file.getParentFile().getName();
    //        System.out.println(dateStr);
            if (Pattern.compile("\\d").matcher(dateStr).find()) {
                dateStr = Pattern.compile("-").matcher(dateStr).replaceAll("");
                result[0] = dateStr.substring(0, 8);
            } else {
                result[0] = "";
            }
    
            // 社区
            String fileName = file.getName();
            if (fileName.indexOf("-") < 0) {
                fileName = Pattern.compile("\\.").matcher(fileName).replaceAll("-.");
            }
            fileName = Pattern.compile("--+").matcher(fileName).replaceAll("-");
            result[1] = fileName.substring(fileName.indexOf("-") + 1, fileName.indexOf("."));
    
            return result;
        }
    
    
        public static LinkedList<File> findAllFile(String rootPath) {
            File file = new File(rootPath);
            LinkedList<File> list = new LinkedList<>();
            if (file.exists()) {
                File[] subDirs = file.listFiles();
                for (File tmpDir : subDirs) {
    //                System.out.println(tmpDir);
                    for (File tmpFile : tmpDir.listFiles()) {
                        if (tmpFile.isFile() && tmpFile.getName().indexOf("~$") < 0) {
                            list.add(tmpFile);
                        }
                    }
                }
            }
    
            return list;
        }
    
        public static ArrayList<String> findSub(String docx) {
            String name = "";
            String gender = "";
            String age = "";
            String MRICheck = "";
            String MRIMem = "";
    
    
            if (!Pattern.compile("性别:").matcher(docx).find() || !Pattern.compile("年龄:").matcher(docx).find()) {
                try {
                    name = docx.substring(docx.indexOf("姓名:") + 3, docx.indexOf("检查项目:"));
                    MRICheck = docx.substring(docx.indexOf("MRI检查描述:") + 8, docx.indexOf("MRI印象:"));
                    MRIMem = docx.substring(docx.indexOf("MRI印象:") + 6, docx.indexOf("报告医师:"));
                } catch (StringIndexOutOfBoundsException e) {
    //                name = "";
                }
            } else {
                name = docx.substring(docx.indexOf("姓名:") + 3, docx.indexOf("性别:"));
                gender = docx.substring(docx.indexOf("性别:") + 3, docx.indexOf("年龄:"));
                age = docx.substring(docx.indexOf("年龄:") + 3, docx.indexOf("检查项目:"));
                MRICheck = docx.substring(docx.indexOf("MRI检查描述:") + 8, docx.indexOf("MRI印象:"));
                MRIMem = docx.substring(docx.indexOf("MRI印象:") + 6, docx.indexOf("报告医师:"));
            }
    
            ArrayList<String> result = new ArrayList<>();
            result.add(name);
            result.add(gender);
            result.add(age);
            result.add(MRICheck);
            result.add(MRIMem);
            return result;
        }
    }
    

    Main.java

    import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
    import org.apache.poi.xwpf.usermodel.XWPFDocument;
    
    import java.io.*;
    import java.util.ArrayList;
    import java.util.regex.*;
    
    import static services.MriReportService.findAllFile;
    import static services.MriReportService.findSub;
    import static services.MriReportService.findYearAndSource;
    
    public class Main {
    
        public static void main(String[] args) throws Exception {
    
            if (args.length < 2) {
                System.out.println("请输入源文件和目标文件的完整路径!");
                System.out.println("举个例子:java -jar docx2csv.jar d:\\核磁报告 d:\\result.csv");
                System.exit(-1);
            }
    
            String srcPath = args[0];
            String outPath = args[1];
            ArrayList<ArrayList<String>> result = new ArrayList<>();
            for (File tmpFile : findAllFile(srcPath)) {
    
                String[] yearAndSrc = findYearAndSource(tmpFile);
    
                FileInputStream fis = new FileInputStream(tmpFile);
                XWPFDocument xdoc = new XWPFDocument(fis);
                XWPFWordExtractor extractor = new XWPFWordExtractor(xdoc);
                String docx = extractor.getText();
    
                docx = Pattern.compile("\\s").matcher(docx).replaceAll("");
                ArrayList<String> tmpRe = findSub(docx);
                tmpRe.add(yearAndSrc[0]);
                tmpRe.add(yearAndSrc[1]);
                result.add(tmpRe);
                fis.close();
            }
            write(result, outPath);
        }
    
        public static void write(ArrayList<ArrayList<String>> result, String outPath) throws IOException {
            BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(
                    new FileOutputStream(outPath), "GBK"));
            for (ArrayList<String> tmpStrs : result) {
    //            System.out.println();
                bufferedWriter.write(tmpStrs.get(0) + "," + tmpStrs.get(1) + ","
                        + tmpStrs.get(2) + "," + tmpStrs.get(3) + ","
                        + tmpStrs.get(4) + "," + tmpStrs.get(5) + ","
                        + tmpStrs.get(6));
                bufferedWriter.newLine();
            }
            bufferedWriter.close();
        }
    }
    
    展开全文
  • 提取Excel文档的sheet表目录步骤: 1.定义宏:getworkbook= get.workbook(1) 2.双击A1单元格,提取sheet表名,输入公式:=INDEX(RIGHT(getworkbook,LEN(getworkbook)-FIND("]",getworkbook)) ,ROW(A1) )&T(NOW())。...
    提取Excel文档的sheet表目录步骤:
    
    1.定义宏:getworkbook= get.workbook(1)
    2.双击A1单元格,提取sheet表名,输入公式:=INDEX(RIGHT(getworkbook,LEN(getworkbook)-FIND("]",getworkbook)) ,ROW(A1) )&T(NOW())。然后下拉出所有表名
    3.双击B1单元格,建立表名对应到相应sheet表的超链接,输入公式:=HYPERLINK("#"&A1&"!"&"A1",A1)。然后下拉出所有超链接
    4.隐藏A列
    EXCEl基本符号:
    “&”字符运算连接符,比如A1&A2,表示将A1与A2中的字符直接连接在一起,形成一个新的字符串。
    “:”用于描述单元格区域,如A1:B5,就是左上角为A1,右下角为B5的方形单元格区域。A:A:表示A整列
    “,”常用于函数中,以分隔函数公式中的不同参数,如sum(A1,B2:C3),表示Sum()函数的第一个参数是A1单元格,第二个参数为B2:C3单元格区域
    “#sheet1!A1”:表示sheet1表的A1列
    展开全文
  • 用Python提取解析pdf文档中内容

    千次阅读 2019-03-22 17:04:00
    用Python提取解析pdf文档中内容文章目录: 参考: 1、https://blog.csdn.net/tmaczt/article/details/82876018 # Tika库 2、https://blog.csdn.net/blmoistawinde/article/details/82051915 # pdfplumber 库 3、...

    用Python提取解析pdf文档中内容

    文章目录:

    参考:
    1、https://blog.csdn.net/tmaczt/article/details/82876018 # Tika库
    2、https://blog.csdn.net/blmoistawinde/article/details/82051915 # pdfplumber 库
    3、https://blog.csdn.net/u013421629/article/details/72764737 # pdfplumber 库
    4、https://blog.csdn.net/zyc121561/article/details/77877912 # pdfplumber 库
    5、https://blog.csdn.net/I_am_hardy/article/details/82950397

    展开全文
  • Aspose.PDF for .NET(点击下载)是一种高PDF处理和解析API,用于跨平台应用程序执行文档管理和操作任务。API可以轻松用于生成、修改、转换、渲染、保护和打印PDF文档,而无需使用Adobe Acrobat。此外,API还...
  • 直入主题(萌新求轻虐)当我们获得一个长长长的文档想要提取其中的数字,如下图 如果想要用java算出进球的总数(其实用sql更方便,但是我们要秀操作)以下为简单科普,大牛请直接看最下边的代码bu...
  • bat文件生成 ...用途:提取目录名与文件名到txt文件 复制粘贴以下内容 dir/a/s/b>LIST.TXT pause 其中:/b是去掉多余信息,其中把/a改/ad 表示只要文件夹,如果改成/a-d则是只要文件。 ...
  • 如何快速提取Word文档中的图片

    千次阅读 2011-03-19 09:50:00
    如何快速提取Word文档中的图片
  • python怎么提取两个文本文档相同的内容 一、准备工作: 1、需要有二个文本文件:1.txt 2.txt 2、新建test.py 3、把1.txt 2.txt 拷贝到test.py同目录下 二、代码如下: #比较1.txt与2.txt二个文本,有没有相同...
  • JAVA_API1.6文档(中文)

    万次下载 热门讨论 2010-04-12 13:31:34
    java.awt.dnd Drag 和 Drop 是一种直接操作动作,许多图形用户界面系统中都会遇到它,它提供了一种机制,能够两个与 GUI 显示元素逻辑相关的实体之间传输信息。 java.awt.event 提供处理由 AWT 组件所激发的...
  • Scikit-Learn 中文文档完整目录

    千次阅读 2018-06-13 09:36:10
    Apachecn是一个专注于优秀的开源项目维护的开源组织,热心网友的共同努力下,对Scikit-learn的文档进行了中文翻译,详情见scikit-learn中文文档。本文按照个人的阅读偏好对该文档做了一个目录,便于使用时的检索。...
  • 由于本节内容与“跟不上...这里谨转载一下。今天看了内容后很是激动,动手编了一下,把电脑里所有的pdf转了一遍,发现用adobe自带的工具转更方便,虽然pdfbox更快一些。粘一下sourceforge里对pdfbox的描述:PDFBox is
  • 通过python 提取docx文件的文本内容,包括:段落、文本域、页眉页脚、目录、超链接、脚注等各处文本 import os import re import docx import lxml import shutil import logging from io import BytesIO from ...
  • 一键生成PDF文档的书签目录

    千次阅读 2019-01-28 18:43:48
    而有书签目录的PDF文档阅读起来既方便下次阅读,也方便记忆。最近桌手考PMP认证考试的事情,网上下载的PDF都是没有书签目的,阅读起来集齐别扭。而身为程序员坚信有一键生成书剑目录的方法,坚决不一个个手动...
  • 因未docx库找到直接识别word中目录及文本框文本的方法,所以采用了一个“笨”方法,docx库可以把word文档解析成xml格式,以解析xml的方式查找目录及文本框文本,具体做法: 迭代出文档的所有element,其中...
  • 日常工作,你是否遇到过这样的场景,领导发来一份 Word 文档,要求你将文档中的图片存储到一个文件夹内,并且还要将图片都改成 .jpg 或者 .png,你会怎么办?你是不是一边内心崩溃,一边开始一张张的 另存为。今天...
  • 文章目录一、说明:二、提取数据安装模块:1、提取文本内容:2、提取Excel表格内容: 一、说明: 本文的需求是提取docx文档里面的数据信息,包括文本和Excel表格信息。 经过一上午的搜索,目前找到了一些文字,整理...
  •   我们都知道eclipse可以快捷的为类,方法和数据域添加注释,方法为/**+回车,默认的样式为:   很明显这个类注释只含有作者的信息,如果我们想为其添加类名、描述、创建时间、版本信息等,那该如何
  • 因为swf无法提取上传word文档的目录,这次试用了openOffice+pdf2html的方式,将word转为pdf再转html,从html提取目录的信息实现目录和文档的预览。  jsp上传文件,采用form表单提交,we...
  • FlexPaper 2.2.1介绍与提取嵌入的文档

    千次阅读 2017-03-29 11:47:02
    源起看到某个公司内网的公文使用FlexPaper组件来显示文档这儿是GoogleCode Project的主页, 还有现在的官方主页。目前FlexPaper是个开源项目,GPLv3协议下免费使用,也有商业许可版本与无限制版。下面我们先介绍...
  • word文档的左侧目录被隐藏了,怎么显示? 解决方法: 注意:某title要左侧目录现实就得设置为标题先。 视图--》http://www.yayihouse.com/yayishuwu/chapter/1968 ...
  • NLP:两种方法(自定义函数和封装函数)实现提取两人对话内容(***分隔txt文档),并各自保存为txt文档 目录 问题探究 实现代码 问题探究 实现代码 f=open("niu.txt") interviewer=[] Qtum=...
  • 有些pdf文件比较大,如果想要其中部分内容的话可以将需要的页面提取出来,形成新的文件,那么怎样可以对pdf文件的页面进行提取呢?...打开对话框后,页面范围选项设置需要提取的页面。 ③对象
  • 一键生成PDF文档的书签目录 原创codeing_doc发布于2019-01-28 18:43:48阅读数 1018收藏 展开 起因 很多网上找的pdf格式的电子书都没有书签,这给阅读带来了很多障碍。而有书签目录的PDF文档阅读起来既方便下次...
  • 转 POI Project提取word文档的方法

    千次阅读 2008-10-09 11:06:00
    使用POI提取Word文件的文本内容2008年04月28日 星期一 17:03POI是Apache的一个开源项目,可以到Apache网站下载相应的jar包文件,及其源文件。POI提供了提取一些非TXT文本中文本内容的API,比如提取Word,Excel等,...
  • 如何 Windows 上 使用 ONLYOFFICE 协作编辑文档

    万次阅读 多人点赞 2018-02-19 20:21:39
    ONLYOFFICE Document Server提供文档协作的服务功能,支持Word,Excel和PowerPoint以及国产WPS的协作。但是这里告诉我们,需要进行文档管理和存储的二次开发。它api里现成的开发好的文档管理平台,有java,node.js,...
  • 把 Visual Studio .NET 源代码文件C# XML注释提取成工程文档 PRE { background:#EEEEEE; margin-top:1em; margin-bottom:1em; margin-left:0px; padding:5pt; font-size:90%; font-family:courier new,courier,...
  • [Python数据处理] 怎样用Python预处理txt文档提取数据

    万次阅读 多人点赞 2019-05-31 15:08:11
    注:grade.txt需要以ANSI编码格式保存与.py文件同一目录下。 可以直接运行.py,也可以通过cmd运行,cmd命令是:(假设grade.txt和grade.py都存放在E盘下:) E: grade.py 就可以看到运行结果了。 ...
  • hibernate 中文文档

    万次阅读 多人点赞 2015-01-19 00:09:06
    参考文档 3.2.0 CR1 目录 前言 1. 翻译说明2. 版权声明 前言1. 创建一个注解项目 1.1. 系统需求1.2. 系统配置 2. 实体Bean 2.1. 简介2.2. 用EJB3注解进行映射 2.2.1. 声明实体bean 2.2....
  • SheetJS中文文档-js导出Excel脚本库

    万次阅读 2021-01-08 11:33:13
    转载自 GITHUB用户rockboom 的翻译文档 SheetJs下载: GITHUB地址 | CSDN下载地址 SheetJS js-xlsx SheetJS是用于多种电子表格格式的解析器和编写器。通过官方规范、相关文档以及测试文件实现简洁的JS方法。SheetJS...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 109,079
精华内容 43,631
关键字:

在文档中如何提取目录