0
我已經基於模板創建了一個word文檔。OpenXML WordProcessingDocument到base64
現在我想得到這個新的word文檔的base64字符串。
我發現了一些關於獲取內存流然後將其轉換爲base64的東西,但我並不真正瞭解它是如何工作的。
任何想法將轉換爲base64
?
感謝
我已經基於模板創建了一個word文檔。OpenXML WordProcessingDocument到base64
現在我想得到這個新的word文檔的base64字符串。
我發現了一些關於獲取內存流然後將其轉換爲base64的東西,但我並不真正瞭解它是如何工作的。
任何想法將轉換爲base64
?
感謝
最簡單的方法是
byte[] bytes= System.IO.File.ReadAllBytes(sFullFileName);
string sBase64Bytes = System.Convert.ToBase64String(bytes);
你不必使用內存流加載字節,並轉化爲底部64,但如果你想更新內存的一些內容和獲取更新的base64在內存中,你可以試試這個:
byte[] bytes = System.Convert.FromBase64String(sBase64Data);
using (MemoryStream ms = new MemoryStream(bytes, true))
{
ms.Write(bytes, 0, bytes.Length);
using (WordprocessingDocument doc = WordprocessingDocument.Open(ms,true))
{
XmlDocument xCusDoc = OpenXmlHelper.GetCustomXmlDocument(doc);
sLayoutName = xCusDoc.DocumentElement.Attributes["name"].Value.ToString();
using (MemoryStream msw= new MemoryStream())
{
ms.WriteTo(msw);
bytes = msw.GetBuffer();
}
}//end using (WordprocessingDocument doc
}//end using (MemoryStream ms
如果你喜歡將它保存到一個物理文件,你可以寫字節。
System.IO.File.WriteAllBytes(sFileName, bytes);