c#中如何定位word文档里的标题和文本

c#中如何定位word文档里的标题和文本,第1张

利用书签定位到Word文档的指定位置 (三种方法)

首先在Word文档中,设置书签,并命名(假设建了一个名为"BM_TEST"的书签)然后使用C# *** 作Wordusing MSWord = Microsoft.Office.Interop.Wordprivate MSWord.Application wordApp //Word应用程序变量

private MSWord.Document wordDoc//Word文档变量

private Object Nothing = Missing.Value

//初始化

wordApp = new MSWord.ApplicationClass()

wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing)

// 打开Word

object FileName = strPath

object readOnly = false

object isVisible = true

wordDoc = wordApp.Documents.Open(ref FileName, ref Nothing, ref readOnly,

ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing,

ref Nothing, ref Nothing, ref Nothing, ref isVisible, ref Nothing,

ref Nothing, ref Nothing, ref Nothing)object bk = "BM_TEST"方法一:使用Word应用程序变量,使用这种方法,wordApp.Documents.Open()中确保isVisible的值为true

if (wordApp.ActiveDocument.Bookmarks.Exists("BM_TEST"))

{

wordApp.ActiveDocument.Bookmarks.get_Item(ref bk).Select()

wordApp.Selection.TypeText("insert text") // 插入文本

}方法二:使用Word文档变量

if (wordDoc.Bookmarks.Exists("BM_TEST"))

{

wordDoc.Bookmarks.get_Item(ref bk).Range.Text = "insert text"// 插入文本

}方法三:使用Goto函数,跳转到指定书签

object BookMarkName = "BM_TEST"

object what = MSWord.WdGoToItem.wdGoToBookmark

wordDoc.ActiveWindow.Selection.GoTo(ref what, ref Nothing, ref Nothing, ref BookMarkName)

wordDoc.ActiveWindow.Selection.TypeText("Hello!")

C语言文件定位,主要依靠fseek函数实现,具体代码如下,

#include <stdio.h>

int main(int argc, char *argv[])

{

FILE *fp=NULL

long len=0L//文件长度

fp=fopen("test.dat","rb")//假设当前目录有test.dat文件

if(!fp)//检查文件打开是否正常

{

printf("文件打开失败,程序退出!\n")

exit(1)

}

fseek(fp,0L,SEEK_END)//文件定位到文件末尾

len=ftell(fp)//获取文件长度

if(len/1024>0)

printf("文件大小为%ldKB!\n",len/1024)

else

printf("文件大小为%ldB!\n",len)

rewind(fp)//文件指针移到开始处

if(fp)//关闭文件

{

fclose(fp)

fp=NULL

}

return 0

}

int fseek( FILE *stream, long offset, int origin )函数fseek()为文件指针stream设置位置数据。origin的值应该是下列值之一,

SEEK_SET(从文件的开始处开始搜索)

SEEK_CUR(从当前位置开始搜索)

SEEK_END(从文件的结束处开始搜索)

fseek()成功时返回0,失败时返回非零。

c语言的文件定位是fseek函数fseek(文件指针,位偏移,起始点);起始点c提供了文件开始

文件当前位置

文件末尾三个值分别对应0

1

2,位偏移是只偏移多少个字节而不是几行c语言貌似不支持以行的形式移动指针

例:fseek(fp,100L,0)将位置指针移到离文件头100个字节处

如果第二个参数是负数的就是后退多少字节


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11382859.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存