Как читать файлы HTML с помощью ACE.OLEDB.12.0 - PullRequest
0 голосов
/ 05 июня 2018

Я пытался читать файлы .xls с помощью Microsoft.ACE.OLEDB.12.0.Я мог прочитать некоторые файлы, но некоторые оказались html-файлами с расширением .xls и выдавали такую ​​ошибку: "External table is not in the expected format." Эти файлы HTML имеют следующую схему:

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">
 <head>
  <meta http-equiv="Content-Type" content="text/html;" charset="utf-8"> 
  <meta name="ProgId" content="Excel.Sheet">
  <meta name="Generator" content="Microsoft Excel 11">
  <title>Document and Custom Property </title>
  <!--[if gte mso 9]><xml><o:CustomDocumentProperties><o:BUSINESSGROUP dt:dt="string">CHANNELA</o:BUSINESSGROUP><o:BUSINESSGROUPID dt:dt="string">2</o:BUSINESSGROUPID></o:CustomDocumentProperties></xml><![endif]-->
 </head>
 <body>
 ...
 </body>
</html>

Iизменил строку подключения на Provider=Microsoft.ACE.OLEDB.12.0; Data Source=file.xls;Extended Properties="HTML Import" для чтения файлов HTML.Тем не менее, это работает очень медленно.Кроме того, он пропускает <div> или другие теги и читает только из формальных тегов <td>.Но Excel 2013 может открывать такой HTML-файл очень быстро и не пропускает никакого содержимого HTML-тега.

Как я могу читать такие HTML-файлы, которые читает Excel?

...