【发布时间】:2020-01-12 16:00:14
【问题描述】:
如果我查看 MS Infopath XML 文件的内部,附件似乎是存储在标签之间的某种 ASCII 二进制代码。我没有确定的背景,所以我不确定。我认为这应该很容易用 VBA 生成。
我正在使用的代码如下。在这种情况下,我试图从我可以嵌入的 Excel 文件中获取文本。如果您运行该代码,则错误应该与参数类型错误有关。在这种情况下,我引用了一个 Excel 文件,但它可能是很多东西。
标签之间的代码类似于:stu2zAQvBfIPwi8BhadFCiKwnIOSXNMA8QFeqWptUWYr5Lr1P77rqg4MQLHimoCzUWURHJmdpaPnVxtjC4eI
我不知道这是否有帮助,但我不知道该怎么做。
Const adTypeBinary = 1Const adTypeText = 2
Const adModeReadWrite = 3
Sub RunThis()
bin2var "c:\documents\IYYMMCC Validation.xlsx"
End Sub
Function bin2var(filename As String) As String
Dim f As Integer
f = FreeFile()
Open filename For Binary Access Read Lock Write As #f
bin2var = Space(FileLen(filename))
Get #f, , bin2var
thestring = BytesToString(bin2var, CdoUS_ASCII)
Close #f
End Function
Function BytesToString(bytes, charset)
With CreateObject("ADODB.Stream")
.Mode = adModeReadWrite
.Type = adTypeBinary
.Open
.Write bytes
.Position = 0
.Type = adTypeText
.charset = charset
BytesToString = .ReadText
End With
End Function
【问题讨论】:
标签: xml binary attachment