Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何导出OneNote';将网页转换为html文件或文本? 我的问题:_C#_Onenote - Fatal编程技术网

C# 如何导出OneNote';将网页转换为html文件或文本? 我的问题:

C# 如何导出OneNote';将网页转换为html文件或文本? 我的问题:,c#,onenote,C#,Onenote,我知道onenote rest web api可以做到这一点,但我希望使用pc客户端库。(更快) 是否有任何库可以将onenote页面导出到html文件 我试过的例子: 1.创建页面: 2.我尝试使用ScipBe.Common.Office.OneNotelibary,然后得到xml格式的内容 void Main() { var oneNoteProvider = new OneNoteProvider(); var pageitems = oneNoteProvider.Pa

我知道onenote rest web api可以做到这一点,但我希望使用pc客户端库。(更快)

是否有任何库可以将onenote页面导出到html文件

我试过的例子: 1.创建页面:

2.我尝试使用
ScipBe.Common.Office.OneNote
libary,然后得到xml格式的内容

void Main()
{
    var oneNoteProvider = new OneNoteProvider();
    var pageitems = oneNoteProvider.PageItems.Where(p => p.Name =="TEST");
    foreach (var item in pageitems)
    {
        var pageXMLContent = "";
        oneNoteProvider.OneNote.GetPageContent(item.ID, out pageXMLContent, Microsoft.Office.Interop.OneNote.PageInfo.piBasic);
        pageXMLContent.Dump($"{item.LastModified} {item.Notebook.Name} {item.Section.Name} {item.Name} {item.DateTime}");
    }
}

查询内容结果:

这是测试页面]]>
预期结果:

测试

  • 这是测试页面

我尝试使用
XDocument
获取值

void Main()
{
    var oneNoteProvider = new OneNoteProvider();
    var pageitems = oneNoteProvider.PageItems.Where(p => p.Name =="TEST");
    foreach (var item in pageitems)
    {
        var pageXMLContent = string.Empty;
        oneNoteProvider.OneNote.GetPageContent(item.ID, out pageXMLContent, Microsoft.Office.Interop.OneNote.PageInfo.piBasic);

        var xml = XDocument.Parse(pageXMLContent);
        var ns = xml.Root.Name.Namespace;
        var html = $@"
            <html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:dt='uuid:{item.ID}' xmlns='http://www.w3.org/TR/REC-html40'>
            <body lang=zh-TW style='font-family:Calibri;font-size:11.0pt'>
                {
                    string.Join("<br>",xml.Descendants(ns + "T").Skip(1).Select(s=>s.Value)) //skip first one because it's title.
                }
            </body>
            </html>".Dump();
    }
}
void Main()
{
var oneNoteProvider=新的oneNoteProvider();
var pageitems=oneNoteProvider.pageitems.Where(p=>p.Name==“TEST”);
foreach(pageitems中的变量项)
{
var pageXMLContent=string.Empty;
OneNote.OneNote.GetPageContent(item.ID,out-pageXMLContent,Microsoft.Office.Interop.OneNote.PageInfo.piBasic);
var xml=XDocument.Parse(pageXMLContent);
var ns=xml.Root.Name.Namespace;
var html=$@”
{
string.Join(“
”,xml.subjections(ns+“T”)。跳过(1)。选择(s=>s.Value))//跳过第一个,因为它是标题。 } “.Dump(); } }
查询结果:


这是测试页面
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40">
<body lang=zh-TW style='font-family:Calibri;font-size:11.0pt'>
    <div style='direction:ltr;border-width:100%'>
        <div style='direction:ltr;margin-top:0in;margin-left:0in;width:6.8652in'>
            <div style='direction:ltr;margin-top:0in;margin-left:.0527in;width:1.1743in'>
                <p style='margin:0in;font-family:"Microsoft JhengHei";font-size:20.0pt' lang=en-US>TEST</p>
            </div>
            <div style='direction:ltr;margin-top:.3298in;margin-left:0in;width:6.8652in'>
                <ul style='margin-left:.0312in;direction:ltr;unicode-bidi:embed;margin-top:
 0in;margin-bottom:0in'>
                    <p style='margin:0in;font-family:Calibri;font-size:11.0pt'>&nbsp;</p>
                    <ol type=1 style='margin-left:.375in;direction:ltr;unicode-bidi:embed;
  margin-top:0in;margin-bottom:0in;font-family:"Microsoft JhengHei";font-size:
  18.0pt;font-weight:bold;font-style:normal'>
                        <li value=1 style='margin-top:0;margin-bottom:0;vertical-align:middle;
      font-weight:bold' lang=en-US>
                            <span style='font-family:"Microsoft JhengHei";
      font-size:18.0pt;font-weight:bold;font-style:normal;font-weight:bold;
      font-family:"Microsoft JhengHei";font-size:18.0pt'>This is test Page</span>
                        </li>
                    </ol>
                    <p style='margin:0in'>
                        <img src="OneNote.files/image001.png" width=652 height=110 alt="機器產生的替代文字:&#10;,CHANGEDAFEWSECONDSAGO&#10;OneN0teExportpagetohtmlfile">
                    </p>
                </ul>
            </div>
        </div>
    </div>
</body>
</html>
void Main()
{
    var oneNoteProvider = new OneNoteProvider();
    var pageitems = oneNoteProvider.PageItems.Where(p => p.Name =="TEST");
    foreach (var item in pageitems)
    {
        var pageXMLContent = string.Empty;
        oneNoteProvider.OneNote.GetPageContent(item.ID, out pageXMLContent, Microsoft.Office.Interop.OneNote.PageInfo.piBasic);

        var xml = XDocument.Parse(pageXMLContent);
        var ns = xml.Root.Name.Namespace;
        var html = $@"
            <html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:dt='uuid:{item.ID}' xmlns='http://www.w3.org/TR/REC-html40'>
            <body lang=zh-TW style='font-family:Calibri;font-size:11.0pt'>
                {
                    string.Join("<br>",xml.Descendants(ns + "T").Skip(1).Select(s=>s.Value)) //skip first one because it's title.
                }
            </body>
            </html>".Dump();
    }
}