1. 怎么用VC读取Word文本框中的内容
给你个VB。
net的例子,在vb2003 —+word 2000下测试可用其他有什么问题,自己查MSDN好了/en-us/library/bb187360.aspxPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim ddd As Word.Application = New Word.Application ddd.Documents.Open("E:\dddd.doc") Dim docu As Word.Document = ddd.ActiveDocument Dim ran As Word.Range = docu.Range If ran.Font.Color = ran.Font.Color.wdColorRed Then '文档字体颜色 MessageBox.Show("红色的") End If Dim textBoxs As Word.Shapes = docu.Shapes Dim textbox As Word.Shape = textBoxs.Item(1) '第一个shape, shape包括文本框 等等 Dim text As Word.TextFrame = textbox.TextFrame ran = text.TextRange() MessageBox.Show("文本输入框的内容是 " + ran.Text) '文本框的内容 ran.Text = "dddddddddddddddddddddd" '设置文本框的内容 End Sub。
2. 如何用c++读取word文档
基本步骤
(1)创建)一个 MFC 的程序工程。
注意:在VC中对WORD进行操作需要在MFC AppWizard - Step 2 of
4中的Automaiton选项上打上勾。
(2)Ctrl+W 执行 ClassWizard(本文按照 VC6 操作,示例程序是在VC6 下编写测试的)。
(3)Add Class。\From a type Library。 在 Office
目录中,找到想使用的类型库。(我使用的是 Office2003,其Word 的类型库文件,保存在 E:\Program
Files\Microsoft Office\Office12\MSWOR.OLB)。
(4)选择类型库文件后,在弹出的对话窗中继续选择要添加的类。具体选择什么类,要看你将来在程序中打算调用什么功能。当然,也可以不用考虑这么多,用鼠标和Shift键配合,全部选择也可以。
(5)初始化COM。方法一,找到App的InitInstance()函数,在其中添加
AfxOleInit()函数的调用;方法二,在需要调用COM功能的地方 CoInitialize(NULL),调用完毕后
CoUninitialize()。
(6)在你需要调用 Office 功能函数的 cpp 文件中
#include
<atlbase.h> //
为了方便操作 VARIANT 类型变量,使用 CComVariant 模板类
#include "文件名.h" //
具体的头文件名,是由装载类型库的文件名决定的,如MSWORD。
示例程序:
//word应用程序
_Application app;
//初始化连接
app.CreateDispatch("word.Application");
Documents doc;
CComVariant
a(_T(strWord)),b(false),c(0),d(true),aa(0),bb(1);
_Document doc1;
doc.AttachDispatch(app.GetDocuments());
doc1.AttachDispatch(doc.Add(&a,&b,&c,&d));
Range range;
//求出文档的所选区域
range=doc1.GetContent();//取出文件内容
str=range.GetText();
m_richedit.SetWindowText(str);
//关闭
app.Quit(&b,&c,&c);
//释放环境
app.ReleaseDispatch();
3. 请高手帮忙解决一下,如何在VC中读取word文件的内容并进行处理
vc6测试成功,写的有点乱你自636f7079e799bee5baa6e997aee7ad9431333262363665己好好看看吧._Application app; Documents docs; _Document doc; Tables WordTables; Table WordTable; Cell WordCell; Range WordRange; Columns WordCols; Rows WordRows; if(!app.CreateDispatch("Word.Application")) { MessageBox("创建Word服务失败!",_T("提示"),MB_ICONERROR); return; } docs.AttachDispatch(app.GetDocuments()); app.SetVisible(true);//打开文件 IDispatch *dispatch=docs.Open(&_variant_t(_T("d:\\test.doc")),&vtMissing,&vtMissing,&vtMissing, &vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing, &vtMissing,&vtMissing,&vtMissing,&vtMissing); if(dispatch) { doc.AttachDispatch(dispatch); } else {//出错了 CString szErr=""; szErr.Format("打开文件出错,请查看文件是否存在!"); ::AfxMessageBox(szErr); //退出程序,释放对象 app.Quit(&vtMissing,&vtMissing,&vtMissing); docs.ReleaseDispatch(); app.ReleaseDispatch(); return; } dispatch=doc.GetTables(); if(dispatch) { WordTables.AttachDispatch(dispatch); } else {//出错了 CString szErr=""; szErr.Format("取得表格集合出错!"); ::AfxMessageBox(szErr); //退出程序,释放对象 app.Quit(&vtMissing,&vtMissing,&vtMissing); docs.ReleaseDispatch(); app.ReleaseDispatch(); doc.ReleaseDispatch(); return; } int nTableCount=WordTables.GetCount(); if(nTableCount>0) { for(int i=1;i<=ntablecount;i++) {="" wordtable.attachdispatch(wordtables.item(i));="" wordcols.attachdispatch(wordtable.getcolumns());="" wordrows.attachdispatch(wordtable.getrows());="" int="" ncols="WordCols.GetCount();" int="" nrows="WordRows.GetCount();" for(int="" j="">=ntablecount;i++)><=nrows;j++) {="" for(int="" k="">=nrows;j++)><=ncols;k++) {="" dispatch="WordTable.Cell(j,k);" wordrange.attachdispatch(dispatch);="" cstring="" sztext="WordRange.GetText();" this-="">MessageBox(szText); } } } } app.Quit(&vtMissing,&vtMissing,&vtMissing); doc.ReleaseDispatch(); docs.ReleaseDispatch(); app.ReleaseDispatch();。
4. 用VC怎样取某WORD文件里的第X段内容
三种方法:一是直接读取.doc文档,可以将所有的文本读入到字符串中在做相关处理:C# code?using System.IO;string temp = System.IO.File.OpenText(@“D:\word.doc”).ReadToEnd();//读取doc文档二是通过调用.NET对于Office的COM组件来做:C# code?using Microsoft.Office.Interop.Word;Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();//打开word程序Microsoft.Office.Interop.Word.Document doc = null;//实例化一个新的word文档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);string temp = doc.Content.Text.Trim();//将全篇内容存入字符串中,也可以调用别的方法,具体可以查询MSDN。
三是将Word转为XML,可以根据要求提取内容,包括标题,目录等等~~C# code?using System.XML;XmlDocument doc = new XmlDocument();doc.Load(filePath); //载入XML文档XmlElement root = doc.DocumentElement; //定义载入XML的根节点foreach(XmlNode xn1 in root.ChildNodes) //对于根节点以外的子节点做循环,以下同理{//对元素处理~~~}。
转载请注明出处51数据库 » vc读取word斜体内容
=ncols;k++)>
丅1秒待續