代码之家  ›  专栏  ›  技术社区  ›  pencilslate

转换docx并上载到SQL表

  •  0
  • pencilslate  · 技术社区  · 15 年前

    我有一个文档是docx格式的,数据是重复格式的。

    我想从重复集中获取每个数据,并上传到SQL表中的一行。

    这里的数据示例:

    Question No : 1
    How is LINQ to SQL different from Entities?
    
    A. Answer 1
    B. Answer 1
    C. Answer 1
    D. Answer 1
    
    Answer : D
    Explanations : 
    Some explanation.
    
    Question No : 2
    How is NVARCHAR different from VARCHAR
    
    A. Answer 1
    B. Answer 1
    C. Answer 1
    D. Answer 1
    
    Answer : D
    Explanations : 
    Some explanation.
    

    我可以想到以下几种方法:
    -使用Office API将文档作为docx读取
    -将文档另存为Word中的XML并分析XML[转换后的XML文档似乎没有结构/架构]
    -将文档另存为Word中的HTML并分析HTML[DOM结构格式不正确]

    你会建议上面哪一个?为什么?有没有工具可以帮助转换文档并上载到SQL表或Access DB?

    谢谢!

    2 回复  |  直到 12 年前
        1
  •  3
  •   RBarryYoung    15 年前

    docx只是一个XML文件的zip目录树。使用winzip或7-zip将其提取到一组子目录。将这些XML文件上载到SQL Server,并添加其文件名和文件夹路径。 使用SQL Server XML方法(.node等)将其分解为所需的关系表单。

    注意,它们确实有XML模式和结构。

        2
  •  0
  •   DmitryK    15 年前

    如果您不经常处理这些文件,那么我会说将其保存为其他格式(SQL更容易处理),甚至可能是纯文本格式。 如果要定期执行此过程(将此文件导入数据库),请执行本机docx处理,而不将其转换为中间格式。 快速谷歌搜索显示,有一些组件可以将docx格式读取到数据库中(例如 http://www.brothersoft.com/code-library-for-.net-(sql-server-msde)-22050.html )