用VBA将word文档处理成支持弹出式注释的epub文档可用的html内容

有一种epub文件,其中的注释以弹窗形式显示,如下图:

点击注释引用后,对应的注释内容会弹出在页面中显示,再次点击弹窗外的任意位置该弹窗即关闭,关闭后点击任意注释引用,对应的注释内容会弹窗显示。

实现弹出式注释可以用CSS伪类、JavaScript、img标签的alt属性等各种方法,例如此文将带注释的Word文档改造成点击注释引用即可弹窗显示注释的HTML文档-CSDN博客即给出了一种JavaScript实现的方式。但是这些方式往往在PC上效果不错,但在手机、平板等设备上就没法弹出了。实际上,根据epub3规范,一个epub文档中的html文件如果符合以下范式即自动支持如上图的弹出式注释:

1、html标签中引入epub命名空间,如下:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">

2、注释引用标签(一般用a标签)加入epub:type="noteref"属性,且注释引用的链接目标为对应的注释内容;

3、注释内容标签(可用div、aside等)加入epub:type="footnote"属性。

这种实现方法不依赖任何CSS或JavaScript,不但在PC上效果不错,在许多支持epub3标准的手机电子书阅读APP上(例如静读天下、汉王墨水屏自带读书APP等)也能弹出显示注释,免除页面跳转的麻烦,因此是首选方法。

现在我们将用VBA自动更正错误的注释引用序号-CSDN博客处理好注释引用与注释编号的文档改造成符合上述规范的html文件所需内容。为便于处理,我们首先在每个诗标题前插入一个连续型分节符,代码如下:

Sub 在符合条件的段落前插入分节符()Dim pos As Long, styleName$styleName = "标题 3"With Selection.HomeKey wdStory '光标回到文档开头,此时Selection.Start为0Dopos = .Start '先记录光标位置.GoTo wdGoToHeading, wdGoToNext, 1 '向后移动到下一个标题,以标题为对象遍历文档If .Start = pos Then Exit Do ' 光标位置不变则已遍历完所有标题,退出循环If .Paragraphs(1).Style = styleName Then.InsertBreak Type:=wdSectionBreakContinuous ' 连续型分节符End IfLoopEnd WithEnd Sub

需要注意的是,这样插入的分节符是一个独立段落,并且也具有与标题段落相同的样式,上面的例子即为“标题 3”。因此,如果后续要以以下方式遍历文档:

.GoTo wdGoToHeading, wdGoToNext

或者以以下方式遍历文档且需要考虑段落样式时:

For each aPara in refRange.Paragraphs' 执行一些需要考虑aPara.style的操作
next

应该在执行完上面的插入分节符的宏后,对全文进行一次查找替换,查找内容为分节符,替换为拦仅修改其样式,使其与标题段落前的样式相同。

然后用下面的代码将处理好的word文档内容修改成html文件所需内容:

Sub txt2epubhtml()' 方便多数手机epub阅读器阅读,PC阅读效果也好,无需css配合Dim aSec As Section, chapter%, regStr$, i%, j%, href$, paraTxt$Dim searchRange As Range, refRange As RangeDim regEx As RegExp, match, matches As ObjectregStr = "[\u2460-\u2473]"Set regEx = CreateObject("VBScript.RegExp")With regEx.Global = True.ignoreCase = True.Pattern = regStr 'End WithFor Each aSec In ActiveDocument.Sectionschapter = chapter + 1i = 0Set searchRange = aSec.RangeSet matches = regEx.Execute(searchRange.Text) ' 在搜索范围内执行匹配操作For j = 0 To matches.Count / 2 - 1Set refRange = searchRangeWith refRange.Find.Text = matches(j).Value.Wrap = 1 ' wdFindContinue.Execute ' 找到注释引用If refRange.Find.found Theni = i + 1href = "c" & Format(chapter, "000") & "_" & Trim(Str(i))refRange.Text = "<a id=""ref_" & href & """ epub:type=""noteref"" href=""#" & href & """><sup>" & _refRange.Text & "</sup></a>"refRange.SetRange refRange.End, searchRange.End' 向下找到与已找到的注释引用对应的注释编号.Forward = True.Execute' 改为向上查找,找到下一条注释引用.Forward = FalserefRange.SelectIf refRange.Find.found ThenparaTxt = refRange.Paragraphs(1).Range.TextrefRange.Paragraphs(1).Range.Text = "<aside epub:type=""footnote"" id=""" & _href & """><a href=""#ref_" & href & """>" & Left(paraTxt, 1) & "</a>" _& Mid(paraTxt, 2, Len(paraTxt) - 2) & "</aside>" & vbCrLfElseMsgBox "找不到对应的注释内容,请检查文档"Exit SubEnd IfEnd IfEnd WithNext jNext aSecDim ps As ObjectSet ps = ActiveDocument.ParagraphsFor i = 1 To ps.CountparaTxt = ps(i).Range.Text' 防止样式为标题3的分节符影响输出,并防止包裹<aside>标签If ps(i).Style = "标题 3" And Len(paraTxt) > 1 And Left(paraTxt, 6) <> "<aside" Thenps(i).Range.Text = "<h3>" & Left(paraTxt, Len(paraTxt) - 1) & "</h3>" & vbCrLfElseIf ps(i).Style = "标题 4" And Len(paraTxt) > 1 Thenps(i).Range.Text = "<h4>" & Left(paraTxt, Len(paraTxt) - 1) & "</h4>" & vbCrLf' 防止空白段落影响输出,并防止包裹<aside>标签ElseIf ps(i).Style = "正文" And Len(paraTxt) > 1 And Left(paraTxt, 6) <> "<aside" Thenps(i).Range.Text = "<p class=""normaltext"">" & Left(paraTxt, Len(paraTxt) - 1) & "</p>" & vbCrLfEnd IfNext i
End Sub

经过上面的处理,Word文档中的文本变成了如下内容:

<h3>落日前墟望贈范廣州雲</h3>
<p class="normaltext">緣溝緑草蔓,扶楥雜華舒<a id="ref_c001_1" epub:type="noteref" href="#c001_1"><sup>①</sup></a>。輕煙淡柳色,重霞映日餘<a id="ref_c001_2" epub:type="noteref" href="#c001_2"><sup>②</sup></a>。遥遥長路遠<a id="ref_c001_3" epub:type="noteref" href="#c001_3"><sup>③</sup></a>,寂寂行人疏<a id="ref_c001_4" epub:type="noteref" href="#c001_4"><sup>④</sup></a>。我心懷碩德,思欲命輕車<a id="ref_c001_5" epub:type="noteref" href="#c001_5"><sup>⑤</sup></a>。高門盛游侣,誰肯進畋漁<a id="ref_c001_6" epub:type="noteref" href="#c001_6"><sup>⑥</sup></a>?</p>
<h4>【題解】</h4>
<p class="normaltext">本篇見《詩紀》八三。《藝文類聚》三一僅載有該詩的前六句,且題作《落日贈范岫》。范廣州雲,即范雲。詳前《酬范記室雲》説明。據《南齊書·東昏侯紀》載,范雲於永元元年(四九九)六月,由始興内史任遷廣州刺史。而據《梁書》本傳,范在廣州刺史任上“坐徵還下獄,會赦免”。另據《南齊書·東昏侯紀》載,永元元年十月,以始興内史顏翻爲廣州刺史。由此可知,范雲在廣州前後不及半年。並由此推知,此詩應作於永元元年(四九九)中。</p>
<p class="normaltext">王夫之云:“寄婉於促,如笙聲之音。雖非琴瑟,正自琅然動人。(《古詩評選》)</p>
<h4>【校注】</h4>
<aside epub:type="footnote" id="c001_1"><a href="#ref_c001_1">①</a>“緣溝”二句:緣,沿。蔓。滋長。扶,沿。楥,籬笆。雜華,雜花,各種各樣的花。《文選》四三丘希範(遲)《與陳伯之書》:“暮春三月,江南草長,雜花生樹,群鶯亂飛。”舒,開放。二句言春日草緣溝生長,花傍籬笆盛開。</aside>
<aside epub:type="footnote" id="c001_2"><a href="#ref_c001_2">②</a>“輕煙”二句:輕煙,指暮靄。重霞,謂色彩濃重的晚霞。映,《類聚》作“掩”。日餘,謂落日餘暉。二句言翠碧的楊柳在暮靄中隱去,落日餘暉使晚霞更加絢麗。</aside>
<aside epub:type="footnote" id="c001_3"><a href="#ref_c001_3">③</a>遠:《類聚》作晚。</aside>
<aside epub:type="footnote" id="c001_4"><a href="#ref_c001_4">④</a>疏:稀少。</aside>
<aside epub:type="footnote" id="c001_5"><a href="#ref_c001_5">⑤</a>我心”二句:碩德,大德。碩,大。輕車,輕便之車。二句言我常感懷您知遇之德,打算前往廣,州探望。</aside>
<aside epub:type="footnote" id="c001_6"><a href="#ref_c001_6">⑥</a>“高門”二句:高門,高貴之門,對范雲住處的敬稱。盛,多。游侣,交游的友人。進,引薦。畋,通“佃”耕種。漁,捕魚。《尚書·多方》:“今爾尚爾宅,畋爾田。”孔穎達疏:“治田謂之畋,猶捕魚謂之漁。”畋漁,從事種田捕魚的人,是詩人自謙之詞。漁,張紘本作“魚”。二句承上言:但考慮到彼處高朋甚多,谁肯引進我這村野農夫呢?</aside><h3>范廣州宅聯句</h3>
<p class="normaltext">洛陽城東西,卻作經年别<a id="ref_c002_1" epub:type="noteref" href="#c002_1"><sup>①</sup></a>。昔去雪如花,今來花似雪。<a id="ref_c002_2" epub:type="noteref" href="#c002_2"><sup>②</sup></a>雲濛濛夕煙起,奄奄殘暉滅<a id="ref_c002_3" epub:type="noteref" href="#c002_3"><sup>③</sup></a>。遜非君愛滿堂,寧我安車轍<a id="ref_c002_4" epub:type="noteref" href="#c002_4"><sup>④</sup></a>。</p>
<h4>【題解】</h4>
<p class="normaltext">本篇見《詩紀》八四。《藝文類聚》二九截録前四句,即范雲詩,題作《别詩》,江本題作《范廣州聯句》。唐詩人李商隱的詩曾兩用其事,《詩話補遺》云:“何遜與范雲聯句詩云:·李商隱《送王校書分司詩》云:“多少分曹掌祕書,洛陽花雪夢隨君。定知何遜緣聯句,每到城東憶范雲。”又《漫成一絶》云:“不妨何范盡名家,未解當年重物華。遠把龍山千里雪,將來擬並洛陽花。”二詩皆用此事。”這說明此詩叙别頗有特色。此詩應爲范雲由廣州刺史任坐事徵還、赦免之後所作,時約在永元二年(五○○)任國子博士之前。</p>
<h4>【校注】</h4>
<aside epub:type="footnote" id="c002_1"><a href="#ref_c002_1">①</a>“洛陽”二句:洛陽,即今河南洛陽市。因其爲西晉都城,南朝人常借指京都建康。經年,常年。二句言咱們二人雖然住在京城的東西兩面,相距並不算遠,但卻常年不得見面。</aside>
<aside epub:type="footnote" id="c002_2"><a href="#ref_c002_2">②</a>“昔去”二句:雪如花,謂冬季;花似雪,言春日。《詩·小雅·采薇》有云:“昔我往矣,楊柳依依。今我來思,雨雪霏霏。”此處化用其意,言去年你離去時是大雪紛飛的冬天,今年再來卻是春花爛漫的季節了。</aside>
<aside epub:type="footnote" id="c002_3"><a href="#ref_c002_3">③</a>“濛濛”二句:濛濛,雲氣迷茫貌。同“蒙蒙”。《楚辭·九思·憫上》:“雲蒙蒙兮電倏爍,孤雌驚兮鳴呴呴。”註:“蒙,一作‘濛’。”夕煙,暮靄。奄奄,日落昏闇貌。李密《陳情表》:“日薄西山,氣息奄奄。”殘暉,落日餘暉。二句寫來時暮靄乍起,太陽落山。</aside>
<aside epub:type="footnote" id="c002_4"><a href="#ref_c002_4">④</a>“非君”二句:用漢陳遵事,《漢書·陳遵傳》説:“遵耆(嗜酒,每大飲,賓客滿堂,輒關門,取客車轄投井中,雖有急,終不得去。”滿,原文誤作,蒲”,據張紘本、薛本改。二句言如不是您如此好客,我怎能在您門外停下車子呢。</aside><h3>望廨前水竹答崔録事</h3>
<p class="normaltext">蕭蕭叢竹映,淡淡平湖靜<a id="ref_c003_1" epub:type="noteref" href="#c003_1"><sup>①</sup></a>。葉倒漣漪文,水漾檀樂影<a id="ref_c003_2" epub:type="noteref" href="#c003_2"><sup>②</sup></a>。相思不會面,相望空延頸<a id="ref_c003_3" epub:type="noteref" href="#c003_3"><sup>③</sup></a>。遠天去浮雲,長墟斜落景<a id="ref_c003_4" epub:type="noteref" href="#c003_4"><sup>④</sup></a>。幽疴與歲積,賞心隨事屏<a id="ref_c003_5" epub:type="noteref" href="#c003_5"><sup>⑤</sup></a>。鄉念一邅回<a id="ref_c003_6" epub:type="noteref" href="#c003_6"><sup>⑥</sup></a>,白髮生俄頃。</p>
<h4>【題解】</h4>
<p class="normaltext">本篇見《詩紀》八三,題下注:“《拾遺》作顧則心詩。張紘本、薛本等各本均載録此詩,説明不同意《選詩拾遺》的意見。廨,公廨,即官署。水竹,謂水邊之竹。崔録事,指崔慰祖。崔慰祖(四六五—四九九)字悦宗,清河武城(今山東武城縣)人。據《南齊書》本傳,崔慰祖齊時曾任始安王(蕭遥光)撫軍墨曹行參軍,轉刑獄,兼記室。《南齊書·百官志·四鎮將軍》:“凡公督府置佐:長史、司馬各一人.諸曹有録事、記室。録事,録事參軍的簡稱。晉置官。掌總録衆官府文簿,舉彈善惡。此爲對崔慰祖的敬稱。崔死於永元元年(四九九),則此詩不得晚於此時可知;崔任始安王記室是蕭遥光任撫軍將軍之時,即建武二年(四九五),則知此詩應作於建武二年至永元元年之間(四九五—四九九)。</p>
<h4>【校注】</h4>
<aside epub:type="footnote" id="c003_1"><a href="#ref_c003_1">①</a>“蕭蕭”二句:蕭蕭,竹影扶疏之狀。淡淡,水平滿貌。二句謂在平靜的湖面上倒映着扶疏秀美的竹影。</aside>
<aside epub:type="footnote" id="c003_2"><a href="#ref_c003_2">②</a>“葉倒”二句:漣漪文,水面被撞擊泛起的連瑣般的波紋。漪,托聲字,猶兮。文,同“紋”。《詩·魏風·伐檀》:“河水清且漣漪。”檀欒,秀美貌,多形容竹。《藝文類聚》六五枚乘《梁王兔園賦》:“修竹檀欒,夾池水旋。”檀樂影,即秀美的竹影。二句承上言風一吹,竹葉蘸着水面泛起漣漪波紋,美好的竹影便消失了。</aside>
<aside epub:type="footnote" id="c003_3"><a href="#ref_c003_3">③</a>延頸:伸長脖頸,翹盼綦切之狀。</aside>
<aside epub:type="footnote" id="c003_4"><a href="#ref_c003_4">④</a>“遠天”二句:去,離去,謂漸漸落下。長墟,謂村落。景,日光。二句寫傍晚“延頸”佇望的情景:殘霞將盡,落日餘暉,思友不至,更增惆悵。</aside>
<aside epub:type="footnote" id="c003_5"><a href="#ref_c003_5">⑤</a>“幽疴”二句:幽疴,猶沉疴。疴,病。王本作“疴”。與歲積,謂一年年加重。賞心,心意歡樂。《文選》三〇謝靈運《田南樹園激流植援》:“賞心不可忘,妙善冀能同。”屏,去。二句謂病體日漸沉重,難得有賞心樂事。</aside>
<aside epub:type="footnote" id="c003_6"><a href="#ref_c003_6">⑥</a>邅回:徘徊。《楚辭·九歎·怨思》:“寧浮沅而馳騁兮,下江湘以邅回。”鄉念邅回,謂思鄉的愁苦反復煎熬着自己。</aside>

只需要将上述内容拷贝到如下的HTML模板的body标签内部,及成为了符合epub3标准的弹出显示注释的HTML文档:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops"><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type" />	</head><body>
<!--注释引用和注释内容标签带有规定的epub:type属性且链接目标正确的HTML文本复制到此处-->
</body></html>

因为扫描文档在Word中校核并编辑出结构比较方便,因此以上通过VBA来处理Word中的文本,实际上,如果弄清了epub3标准的弹窗显示注释的要求,对不符合标准的Epub/HTML文件,也可以利用python的soup库进行修改,使其符合标准,那又是另一个主题了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/497334.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ngnix介绍、安装、实战及用法!!!

一、Nginx简介 1、Nginx概述 Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理服务器&#xff0c;特点是占有内存少&#xff0c;并发能力强&#xff0c;能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数 。 2、正向代理 正向代理&#xff1a;如果把局…

【超详细】Git的基本概念和基本使用方式

Git是程序开发中非常重要的工具&#xff0c;是一种分布式版本控制系统&#xff0c;可用于管理和追踪软件开发过程中的变化。那么关于Git的基本操作你知道吗&#xff1f;下面是Git的基本概念和使用方式的解释&#xff1a; 仓库&#xff08;Repository&#xff09;&#xff1a;Gi…

springboot503基于Sringboot+Vue个人驾校预约管理系统(论文+源码)_kaic

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装个人驾校预约管理系统软件来发挥其高效地信息处理的作用&am…

【Rust自学】7.4. use关键字 Pt.2 :重导入与换国内镜像源教程

喜欢的话别忘了点赞、收藏加关注哦&#xff0c;对接下来的教程有兴趣的可以关注专栏。谢谢喵&#xff01;(&#xff65;ω&#xff65;) 7.4.1. 使用pub use重新导入名称 使用use将路径导入作用域内后。该名称在词作用域内是私有的。 以上一篇文章的代码为例&#xff1a; m…

Pandas03

Pandas01 Pandas02 文章目录 内容回顾1 排序和统计函数2 缺失值处理2.1 认识缺失值2.2 缺失值处理- 删除2.3 缺失值处理- 填充非时序数据时序数据 3 Pandas数据类型3.1 数值类型和字符串类型之间的转换3.2 日期时间类型3.3 日期时间索引 4 分组聚合4.1 分组聚合的API使用4.2 分…

平凉一窝丝:丝丝缕缕的舌尖风情

在平凉的美食版图中&#xff0c;食家巷一窝丝以其独特的工艺和诱人的口感&#xff0c;占据着重要的一席之地&#xff0c;成为了平凉人心目中的经典美食之一。从外观上看&#xff0c;平凉食家巷一窝丝如同一盘精心雕琢的金丝&#xff0c;根根细丝紧密盘绕&#xff0c;整齐而美观…

Wordly Wise 3000 国际背单词01 介绍 + 测词汇量

&#x1f4da; Wordly Wise 3000 国际背单词01 介绍 测词汇量 &#x1f31f; 大家好&#xff01;我们正式启动背Wordly Wise 3000单词&#xff0c;旨在利用国际资源和科学的学练方法&#xff0c;帮助大家更得效地坚持学练单词。我们将通过图文和Video等多种形式与大家分享经验…

C++进阶重点知识(一)|智能指针|右值|lambda|STL|正则表达式

目录 1智能指针1.shared_ptr1.1 shared_ptr的基本用法使用shared_ptr要注意的问题运用 2.unique_ptr独占的智能指针示例&#xff1a;管理动态内存 3.weak_ptr弱引用的智能指针weak_ptr的基本用法lock 的作用&#xff1a;weak_ptr返回this指针weak_ptr解决循环引用问题weak_ptr使…

计算机网络 (9)数据链路层

前言 计算机网络中的数据链路层&#xff08;Data Link Layer&#xff09;是OSI&#xff08;开放系统互连&#xff09;参考模型中的第二层&#xff0c;位于物理层和网络层之间。它在物理层提供的服务基础上&#xff0c;负责在相邻节点之间建立、维护和终止链路&#xff0c;确保数…

【Elasticsearch】DSL查询文档

目录 1.DSL查询文档 1.1.DSL查询分类 1.2.全文检索查询 1.2.1.使用场景 1.2.2.基本语法 1.2.3.示例 1.2.4.总结 1.3.精准查询 1.3.1.term查询 1.3.2.range查询 1.3.3.总结 1.4.地理坐标查询 1.4.1.矩形范围查询 1.4.2.附近查询 1.5.复合查询 1.5.1.相关性算分 …

国内独立开发者案例及免费送独立开发蓝图书

独立开发者在国内越来越受到关注&#xff0c;他们追求的是一种自由且自给自足的工作状态。 送这个&#xff1a; 少楠light&#xff08;Flomo、小报童、如果相机&#xff09;&#xff1a;他们是独立开发者的典范&#xff0c;不仅开发了多款产品&#xff0c;还坚信“剩者为王”…

Browser Use:AI智能体自动化操作浏览器的开源工具

Browser Use:AI智能体自动化操作浏览器的开源工具 Browser Use 简介1. 安装所需依赖2. 生成openai密钥3. 编写代码4. 运行代码5. 部署与优化5.1 部署AI代理5.2 优化与扩展总结Browser Use 简介 browser-use是一个Python库,它能够帮助我们将AI代理与浏览器自动化操作结合起来;…

园区网综合拓扑实验

一、实验要求 实验拓扑图如上图所示 1、按照图示的VLAN及IP地址需求&#xff0c;完成相关配置 2、要求SW1为VLAN 2/3的主根及主网关 SW2为vlan 20/30的主根及主网关 SW1和SW2互为备份 3、可以使用super vlan&#xff08;本实验未使用&#xff09; 4、上层…

为什么深度学习和神经网络要使用 GPU?

为什么深度学习和神经网络要使用 GPU&#xff1f; 本篇文章的目标是帮助初学者了解 CUDA 是什么&#xff0c;以及它如何与 PyTorch 配合使用&#xff0c;更重要的是&#xff0c;我们为何在神经网络编程中使用 GPU。 图形处理单元 (GPU) 要了解 CUDA&#xff0c;我们需要对图…

WebRTC Simulcast 大小流介绍与优化实践

Simulcast 是 WebRTC 中的一种标准化技术 &#xff0c;简称大小流。通过 Simulcast&#xff0c;客户端可以同时发送同一视频的多个版本。每个版本都以不同的分辨率和帧率独立编码&#xff0c;带宽较多的拉流端可以接收较高质量的视频流&#xff0c;带宽有限的拉流端则可以接收较…

R基于贝叶斯加法回归树BART、MCMC的DLNM分布滞后非线性模型分析母婴PM2.5暴露与出生体重数据及GAM模型对比、关键窗口识别

全文链接&#xff1a;https://tecdat.cn/?p38667 摘要&#xff1a;在母婴暴露于空气污染对儿童健康影响的研究中&#xff0c;常需对孕期暴露情况与健康结果进行回归分析。分布滞后非线性模型&#xff08;DLNM&#xff09;是一种常用于估计暴露 - 时间 - 响应函数的统计方法&am…

【从零开始入门unity游戏开发之——C#篇35】C#自定义类实现Sort自定义排序

文章目录 一、List<T>自带的排序方法1、List<T>调用Sort()排序2、 能够使用 Sort() 方法进行排序的本质 二、自定义类的排序1、通过实现泛型IComparable<T> 接口&#xff08;1&#xff09;示例&#xff08;2&#xff09;直接调用 int 类型的 CompareTo 方法进…

【驱动开发】设备分类、设备号申请和注销,注册和移除字符设备,以及一个基本的内核驱动程序框架代码

一、Linux内核对设备的分类 Linux的文件种类 序号符号类型文件内容文件名原信息1-普通文件√√√2d目录文件√√√3p管道文件√√4s本地socket文件√√5l链接文件软链接有;硬链接相当于别名√√6c字符设备√√7b块设备√√设备类型 Linux内核按驱动程序实现模型框架的不同,…

【最新】沃德协会管理系统源码+uniapp前端+环境教程

一.系统介绍 一款基于FastAdminThinkPHPUniapp开发的商协会系统&#xff0c;新一代数字化商协会运营管理系统&#xff0c;以“智慧化会员体系、智敏化内容运营、智能化活动构建”三大板块为基点&#xff0c;实施功能全场景覆盖&#xff0c;一站式解决商协会需求壁垒&#xff0…

Linux-frp_0.61.1内网穿透的配置和使用

下载frp frp官网 https://gofrp.org/zh-cn/docs/setup/ frp安装包下载地址 https://github.com/fatedier/frp/releases?page1 下载之后在服务器上 解压 tar -zxvf frp_0.61.1_linux_amd64.tar.gztar&#xff1a;一个用于压缩和解压缩的工具。-z&#xff1a;表示使用 gzi…