Pergunta

Eu tenho um documento do Word no formato docx com dados em repetir padrão de formato.

Eu gostaria de aproveitar cada dados do conjunto de repetir e para carregar uma linha na tabela de SQL.

Amostra dos dados aqui:

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.

Eu poderia pensar em algumas abordagens:
- Leia o documento como docx usando a API
Escritório - Salvar o documento como XML do Word e XML parse [o documento XML convertido não parece ter uma estrutura / esquema]
- Salvar o documento como HTML de Word e analisar HTML [estrutura DOM não bem formado]

Qual dentre acima que você sugeriria e por quê? Existem algumas ferramentas para ajudar a converter um documento e para carregar uma tabela SQL ou acesso DB?

Obrigado!

Foi útil?

Solução

DOCX é apenas uma árvore ZIP diretório de arquivos XML. Use WinZip ou 7-zip para extraí-lo para um conjunto de subdiretórios. Faça o upload dos arquivos XML para SQL Server, adicionando seu nome de arquivo e caminho da pasta. o uso dos métodos de XML do SQL Server (.node, etc) para as cortou na forma relacional que você deseja.

Note que estes têm esquemas e estruturas XML.

Outras dicas

Se você estiver indo para processar esses arquivos não muito frequentemente, então eu diria que guardá-lo para um formato diferente (mais fácil de processo pelo SQL) - talvez até mesmo um formato de texto simples. Se este processo (de importar este arquivo para DB) vai ser realizada em uma base regular - ir para o processamento DOCX nativa sem convertê-lo para um formato intermediário. Breve Pesquisa Google revelou que existem componentes disponíveis que podem ler docx formato dentro de um banco de dados (por exemplo, http://www.brothersoft.com/code-library-for-.net- (sql-server-msde) -22050.html )

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top