Comment créer de Microsoft.Bureau de.Interop.Mot.Document de l'objet à partir du tableau d'octets, sans l'enregistrer sur le disque?
Comment puis-je créer un Microsoft.Office.Interop.Word.Document
objet de tableau d'octets, sans l'enregistrer sur le disque à l'aide de C#?
public static int GetCounterOfCharacter(byte[] wordContent)
{
Application objWord = new Application();
Microsoft.Office.Interop.Word.Document objDoc = new Document();
//objDoc = objWord.Documents.Open(("D:/Test.docx"); i want to create document from byte array "wordContent"
return objDoc.Characters.Count;
}
OriginalL'auteur Masoomian | 2012-11-05
Vous devez vous connecter pour publier un commentaire.
Il n'est pas simple façon de le faire autant que je sache. Le Mot de l'interopérabilité libs ne sont pas en mesure de lire à partir d'un flux d'octets. Sauf si vous travaillez avec d'énormes (ou une énorme quantité de fichiers), je vous recommande simplement à l'aide d'un fichier tmp:
Je sais que ce n'est pas la réponse que vous cherchez, mais dans un cas comme celui-ci (où faire ce que vous voulez vraiment ne nécessite un peu de temps et l'impatience), il pourrait être utile d'examiner si oui ou non le temps de développement, l'emportent sur les performances d'exécution.
Si vous voulez continuer à chercher un moyen de les résoudre de la façon dont vous l'intention de s', je vous recommande les réponses dans cette fil.
var tmpFileStream = File.OpenWrite(tmpFile);
Visual Studio donne une erreur en disant "résolution de Surcharge a échoué car pas accessible 'Fichier' accepte ce nombre d'arguments". Aucune idée pourquoi c'est?Utilisation
System.IO.File.OpenWrite(...)
(avec l'espace de noms complet). Voir cette question pour plus d'info: stackoverflow.com/questions/8314628/...Notez que les fichiers temporaires restent sur le disque pour toujours si vous utilisez le code exact dans cet exemple. Si votre système est en train de convertir un lot de fichiers, puis envisager de créer le fichier avec
FileOptions.DeleteOnClose
. Voir: stackoverflow.com/questions/3240968OriginalL'auteur Anders Arpi