1
我一些Excel中的數據(XML格式)粘貼到這個代碼剪貼板:XML電子表格副本在vb.net剪貼板特殊字符
Dim textToPaste as String = GetMyXMLFormattedText()
Dim dataobj As New DataObject
Dim xmlStream as new IO.MemoryStream()
xmlStream.Write(System.Text.ASCIIEncoding.ASCII.GetBytes(textToPaste), 0, textToPaste.Length)
dataObj.SetData("XML Spreadsheet", xmlStream)
Clipboard.SetDataObject(dataObj)
其中textToPaste是一樣的東西
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
...
</Worksheet>
</Workbook>
這個例子有效,但如果我在我的文檔中有特殊字符,比如「é」,我會得到一些「?」。 我試圖用其他格式寫我流像
System.Text.UTF32Encoding.UTF32.GetBytes
在TextToPaste使用GetByteCount
和許多其他人可用,或者技術,但是當我嘗試粘貼到Excel,我總是得到一個錯誤,告訴我,我可以不要粘貼這些數據。
是否可以使用XML電子表格格式粘貼除ASCII之外的其他內容到剪貼板?
感謝