C#仪器数据文件解析-XPS文件

XPS为微软推出的类似于Adobe PDF的一种文件格式,个人认为XPS很好,但毕竟PDF已经被大家所熟知,因此XPS的使用很少,也少有仪器数据输出为该格式。

XPS百度百科:https://baike.baidu.com/item/XPS%E6%A0%BC%E5%BC%8F%E6%96%87%E4%BB%B6

以下代码为XPS文档内容的解析示例:

 StringBuilder sb = new StringBuilder();
            //读取文档
            XpsDocument xpsDocument = new XpsDocument(xpsPath, FileAccess.Read);
            //
            var reader = xpsDocument.FixedDocumentSequenceReader;
            //循环文档
            foreach (var document in reader.FixedDocuments)
            {
                //循环页
                foreach (var page in document.FixedPages)
                {
                    //读取XML内容
                    XmlReader xrdr = page.XmlReader;
                    while (xrdr.Read())
                    {
                        switch (xrdr.NodeType)
                        {
                            case XmlNodeType.Element:
                                if (xrdr.Name == "Glyphs")
                                    sb.Append(xrdr["UnicodeString"]);
                                break;
                            default:
                                break;
                        }
                    }
                }
            }
            return sb.ToString();

  

posted @ 2017-10-11 20:36  马洪彪  阅读(852)  评论(0编辑  收藏  举报