Domanda

La maggior parte dei contenuti sul sito Web della mia azienda inizia come un documento Word (codificato Windows-1252) e alla fine viene copiato e incollato nel nostro sistema di gestione dei contenuti codificato UTF-8. La conversione di solito soffoca su alcuni caratteri (caratteri speciali di interruzione, virgolette intelligenti, notazioni scientifiche) che devono essere ripuliti manualmente, ma ovviamente alcuni sempre sfuggono.

Quale pensi che sia il modo migliore per rilevarli?

È stato utile?

Soluzione

Come stai esattamente eseguendo la conversione?

L'intero problema della copia da Word è qualcosa che ho riscontrato più spesso, ma dovrebbe essere davvero facile da risolvere.

I personaggi che menzioni sono tutti nell'intervallo 0x80 - 0x9F in cui la tabella codici Windows-1252 differisce dalla tabella codici ISO-8859-1 . Tale intervallo non è definito in ISO-8859-1.

Devi fare la conversione da ISO-8859-1 (o forse ISO-8859-15) invece di Windows-1252, causando il soffocamento dei caratteri in quell'intervallo.

Dovresti regolare la codifica sorgente della tua conversione o, se ciò non è in qualche modo possibile (non ho familiarità con C #, ma ne dubito), utilizzare il grafico della tabella codici per correggere i 32 caratteri problematici separati dal principale conversione.

Altri suggerimenti

Puoi salvare il testo come .rtf e poi analizzarlo usando qualche altro programma?

Puoi usare il VBA di Word per salvare il testo come qualcosa di sano?

Come già accennato, sarebbe meglio esportare i contenuti di Word in un formato analizzabile (sarebbe RTF o XML).

Potrebbe esserci un motivo specifico per l'utilizzo del copia e incolla per aggiungere il materiale al tuo CMS ma con la copia e l'incollaggio probabilmente finirai sempre con un qualche tipo di controllo visivo e correzione intorno a meno che non crei uno strumento che monitora negli Appunti.

Quando si copia e incolla da (una versione recente) di Word gli Appunti hanno diversi formati che possono essere utilizzati, uno dei formati è basato su XML. Sarebbe possibile creare qualcosa che pulisca il Word XML negli Appunti e " set " la versione di testo (che probabilmente incollerai nel CMS) nel formato pulito.

È possibile utilizzare Word.interop fornito con Office e le funzioni standard degli Appunti C # per creare questo. Lo strumento potrebbe funzionare nella parte superiore (in background) di Word durante l'aggiunta di contenuto al CMS.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top