使用OpenXML for Word搜索和添加评论

时间:2015-06-19 15:20:01

标签: c# openxml openxml-sdk

我是OpenXML SDK的新手。

我需要在服务器端的word docx上执行以下任务,我相信OpenXML SDK是我应该首先考虑的地方。

所以我的要求如下:

  1. 在文档中查找特定文本

  2. 在找到的文字的位置添加评论。

  3. OpenXML SDK是否可行?我尝试浏览文档,找到了搜索和替换文本的方法,但无法找到在适当位置添加注释的方法。

    谢谢!

2 个答案:

答案 0 :(得分:1)

不要过于苛刻,但https://msdn.microsoft.com/en-us/library/office/cc850832.aspx是谷歌首次在“如何使用Open Xml向Word添加评论”中出现的。希望这可以帮助。你需要根据你的用例量身定制它,但它看起来很容易实现。

编辑:这很讽刺,对不起。 :)

答案 1 :(得分:1)

Ron提供的链接表明如何插入评论。 要将其插入到您想要的位置,您可以找到类似

的段落
enter code here
#include "stdafx.h"
#include <iostream>
#include <sstream>

using namespace std;

/*
Enter code for class Student here.
Read statement for specification.
*/
class Student{
    private:
        int Age;
        string firstName;
        string lastName;
        int Standard;
    public:
        void set_age(int);
        void get_age();
        void set_first_name(string);
        void get_first_name();
        void set_last_name(string);
        void get_last_name();
        void set_standard(int);
        void get_standard();
        void to_string();
};


int main() {
    int age, standard;
    string first_name, last_name;
    cin >> age >> first_name >> last_name >> standard;

    Student st;
    st.set_age(age);
    st.set_standard(standard);
    st.set_first_name(first_name);
    st.set_last_name(last_name);


    cout << st.get_age() << endl;


    st.get_last_name(); 
    cout << ",";
    st.get_first_name();


    st.get_standard();


    cout << endl;


    st.to_string();

    system("pause");
    return 0;
}

void Student::set_age(int a)
{
    Age = a;
}

void Student::get_age()
{
    cout << Age ;
}

void Student::set_first_name(string name)
{
    Strcpy(firstname,name);
}

void Student::get_first_name()
{
    cout << firstName;
}

void Student::set_last_name(string name)
{
    Strcpy(lastname,name);
}

void Student::get_last_name()
{
    cout <<lastName;
}

void Student::set_standard(int element)
{
    Standard = element;
}

void Student::get_standard()
{
    cout << Standard;

}

void Student::to_string()
{
    cout << Age << "," <<lastName <<","
        << firstName <<","<< Standard;
}

也许你必须根据匹配标准来调整一下