baliance/gooxml

gooxml是可以对整个office document提供支持的golang库,功能很强大,这里简单给出对word文档的读取案例

安装

go get baliance.com/gooxml/

go build -i baliance.com/gooxml/…

解析word代码

举个例子:

下图为word文档的截图,总共四行,第一行有三种字体

运行代码结果如下:

补充:golang go doc 与 godoc 文档生成查看

Go语言项目十分重视代码的文档,在软件设计中,文档对于软件的可维护和易使用具有重大的影响。因此,文档必须是书写良好并准确的,与此同时它还需要易于书写和维护。

Go语言注释

Go语言中注释一般分为两种,分别是单行注释和多行注释

单行注释是以 // 开头的注释,可以出现在任何地方。

多行注释也叫块注释,以 /* 开头,以 */ 结尾,不可以嵌套使用,一般用于包的文档描述或注释成块的代码片段。

每一个 package 都应该有相关注释,在 package 语句之前的注释内容将被默认认为是这个包的文档, package 的注释应该提供一些相关信息并对整体功能做简要的介绍。

在日常开发过程中,可以使用go doc和godoc命令生成代码的文档。

go doc

go doc 命令打印Go语言程序实体上的文档。可以使用参数来指定程序实体的标识符。

Go语言程序实体是指变量、常量、函数、结构体以及接口。

程序实体标识符就是程序实体的名称。

go doc 用法

go doc [-u] [-c] [package|[package.]symbol[.methodOrField]]

可用的标识:

标识

说明

-all

显示所有文档

-c

匹配程序实体时,大小写敏感

-cmd

将命令(main包)视为常规程序包,如果要显示main包的doc,请指定这个标识

-src

显示完整源代码

-u

显示未导出的程序实体

示例

输出指定 package ,指定类型,指定方法的注释

$ go doc sync.WaitGroup.Add

输出指定 package ,指定类型的所有程序实体,包括未导出的

$ go doc -u -all sync.WaitGroup

输出指定 package 的所有程序实体(非所有详细注释)

$ go doc -u sync

godoc

godoc命令主要用于在无法联网的环境下,以web形式,查看Go语言标准库和项目依赖库的文档。

在 go 1.12 之后的版本中,godoc不再做为go编译器的一部分存在。依然可以通过go get命令安装:

go get -u -v golang.org/x/tools/cmd/godoc

国内的安装方法

通过终端查看文档

go doc命令

$ go doc help

usage: go doc [-u] [-c] [package|[package.]symbol[.method]]

可以看到,go doc接受的参数,可以是包名,也可以是包里的结构、方法等,默认为显示当前目录下的文档。

查看系统log包信息

列出当前包中方法、结构、常量等

查看系统log包中Fatal方法

列出当前函数和注释说明

查看系统log包中Logger结构

列出Logger结构定义以及Logger结构操作的方法集

通过网页查看文档

godoc命令

$ godoc -http=:6060

godoc会监听6060端口,通过网页访问 http://127.0.0.1:6060,godoc基于GOROOT和GOPATH路径下的代码生成文档的。打开首页如下,我们自己项目工程文档和通过go get的代码文档都在Packages中的Third party里面。

编写自己的文档

1、设计接口函数代码

创建documents/calc.go文件

2、设计Example示例代码

创建documents/calc_test.go文件,给calc.go中每个函数编写Example函数

3、网页查看文档

注意以上两个文件必须在$GOPATH/src路径下,使用godoc命令创建文档,用网页打开显示如下

编写文档规则

1、文档中显示的详细主体内容,大多是由用户注释部分提供,注释的方式有两种,单行注释"//"和代码块"/* */"注释。

2、在源码文件中,在package语句前做注释,在文档中看到的就是Overview部分, 注意:此注释必须紧挨package语句前一行,要作为Overview部分的,注释块中间不能有空行。

3、在函数、结构、变量等前做注释的,在文档中看到的就是该项详细描述。注释规则同上。

4、编写的Example程序,函数名必须以Example为前缀,可将测试的输出结果放在在函数尾部,以"// Output:"另起一行,然后将输出内容注释,并追加在后面。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/chanmufeng/article/details/78683941

golang转word到html,golang 解析word文档操作相关推荐

  1. Word控件Spire.Doc 【文档操作】教程(五):在 C#、VB.NET 中合并、设置多个 Word 文档

    合并Word就是把多个文档中的内容收集起来,然后合而为一.用户可以根据文档的内容对 Word 进行合并.本指南重点展示将 C# 和 VB.NET 中的 Word 与Spire.Doc for .NET ...

  2. word打开wps文件乱码_word文档打开是乱码解决方法

    上网搜索资料,好不容易下载一个心仪的文档,当我们再次打开这个文档时,发现Word文档却出现乱码,或者是已经损坏了的文档,这还怎么看呢?如果出现Word文档乱码这种情况,大家不要着急,现在分享word乱 ...

  3. Python3-word文档操作(八):提取word文档中的图片方式一-利用docx库

    1. 简介: 要获取word文档中的图片文件.思路就是先解压,再查找.python中,下面两个库都可以实现这个功能: (1)zip库 (2)docx库 zip库: 上一篇博文已经提过,word本质上也 ...

  4. Word中使用MathType批量调整文档公式的大小

    Word中使用MathType批量调整文档字母公式大小 背景:论文写作需要撰写大量的字母和数学公式,但是在协作撰写及内容中英文翻译过程中,字母和数学公式容易变形,因此Word中使用MathType批量 ...

  5. 关闭word后自动打开新的文档

    解决关闭word后自动打开新的文档 声明:此方法是学的别人的,写出来仅仅为了记录. 步骤:文件 → 选项 → 加载项 → 管理:com加载项 → 转到mysql for excel → 去掉勾勾 → ...

  6. PDF to Word Document Converter for Mac(PDF文档转换器)

    如何将pdf文件转换为word.PPT.html.jpg等文件?PDF to Word&Document Converter是一个PDF文档转换器,可让您快速将PDF文档转换为其他格式的文件. ...

  7. Qt对word文档操作总结

    Qt对word文档操作总结 近期在使用Qt对word进行读写操作时候遇到很多问题,对于Qt内部没有很好的库函数可以使用.office官网上的文档只有VBA的示例,没有Qt的语法例子.在这里作者介绍了一 ...

  8. Word转PDF功能实现,文档转换工具通过PHP开发

    最近比较火的文档转换工具相信大家都听说过,但是怎么实现呢? 通过该接口可以将图片.word.excel.ppt等文档转换为pdf格式的文件 1.可以将Office(Word,Excel,PowerPo ...

  9. word里的html标签,完整word版html标签大全推荐文档

    <完整word版html标签大全推荐文档>由会员分享,可在线阅读,更多相关<完整word版html标签大全推荐文档(11页珍藏版)>请在人人文库网上搜索. 1.实用标准文档文件 ...

  10. Golang 见证 godoc 的强大(生成API文档,打印文档)

    Golang 见证 godoc 的强大(生成API文档,打印文档) 文章目录 Golang 见证 godoc 的强大(生成API文档,打印文档) 一.godoc 介绍 二.godoc 安装 ① 系统环 ...

最新文章

  1. 这款 IDE 插件再次升级,让「小程序云」的开发部署提速 8 倍
  2. 盛趣游戏 html5游戏,盛趣游戏谭雁峰:游戏破局的“精细”时代已来
  3. java 获取微信公众号code为空
  4. 快速搞懂 SQL Server 的锁定和阻塞
  5. 应届生求职产品经理系列【三】:0岁产品经理的八大困惑(上)
  6. .NET短信接口验证
  7. 删数问题(信息学奥赛一本通-T1321)
  8. ObjC学习10-Foundation框架之内存管理
  9. [转]C++异常处理 12
  10. 2017-02-26,周日整理
  11. OFD、PDF 系列软件说明(OFD阅读器--OFD模版设计器--OFD转PDF)
  12. 贝塔自助授权系统php源码,贝塔自助授权系统v1.1
  13. 沿海当地平均海面与85面高程关系
  14. 知识点滴 - 如何下载其他地区的iOS App
  15. 【NLP】中文文本分类数据增强方法:EDA 与代码实现
  16. 三角形形状判断(等边、等腰、直角、等腰直角、非等边)
  17. 白苹果了怎么办_ios13更新遭遇白苹果了怎么办?
  18. 如何把通达信公式变成python_通达信公式-主力雷达Python化
  19. 图书馆信息管理系统(毕业设计)
  20. 【人工智能时代——Notion AI vs ChatGPT】

热门文章

  1. Softice使用备忘录
  2. 物料移动类型和后勤自动科目设置-SAP屠夫 转
  3. vue -- watch侦听器与父子组件间通信
  4. 两个实体(有相同字段)如何赋值
  5. 从GPS角度来讲,抵押车和质押车有什么不同
  6. SEED RL:SCALABLE AND EFFICIENT DEEP-RL WITH ACCELERATED CENTRAL INFERENCE 翻译
  7. 计算机死机按什么恢复出厂设置,电脑恢复出厂设置的方法
  8. notBlank 和 notEmpty
  9. 单细胞基础分析 | 基因细胞类型特异性富集分析
  10. tar.gz压缩与解压命令