xml - 将文件转换为二进制文件以插入 xml 文件
问题描述
如果我查看 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
解决方案
推荐阅读
- javascript - 解构数组并在一行中分配给属性对象
- javascript - Threejs中的“加号”或“X”形波浪
- flutter - webview_flutter 只是在 android 模拟器中显示一个空白屏幕
- python - 通过 python 库使用来自私有注册表的图像创建 docker 服务
- reactjs - 如何从我的 react 应用程序访问 Electron 的进程对象?
- pyspark - 将json文件保存到数据框时如何删除空值
- c# - C# Parallel Array,我不明白为什么 zipFound 是 bool zipFound = false; 任何人都可以向我解释谢谢:)
- java - 在使用 jooq 与 hstore 合并的重复键上
- laravel - 在 laravel 中访问表数据透视表
- faunadb - 如何从动物数据库中的文档中删除特定元素?