我有一个应用程序调用第三方Web API,返回String
,如下所示:
"JVBERi0xLjMNCiXi48/TDQoxIDAgb2JqDQo8PA0KL1R5cGUgL091dGxpbmVzDQovQ291bnQgMA0KPj4NCmVuZG9iag0KMiAwIG9iag0KDQpbL1BERiAvVGV4dCAvSW1hZ2VDXQ0KZW"
(它实际上比这长得多,但是我希望只有一小段代码就足以识别它,而不会让我在一英里长的时间内粘贴一根绳子)
文档说它返回一个Byte
数组但是当我尝试直接接受它作为Byte
数组时,我会收到错误。我的部分问题是文档并不完全清楚Byte
数组代表什么。由于我正在打电话给GetReport函数,我猜它是PDF,但我并不是100%肯定,因为文档根本没有说明。< / p>
所以,无论如何,我得到了这个String
,并且我试图将其转换为PDF。这是什么样的:
Dim reportString As String = GetValuationReport(12345, token.SecurityToken)
Dim report As Byte() = System.Text.Encoding.Unicode.GetBytes(reportString)
File.WriteAllBytes("C:\filepath\myreport.pdf", report)
我非常确定中间线会将String
转换为新的Byte
数组,而不是简单地将其转换为等效的Byte
数组,但我不会这样做。我知道该怎么做。
任何帮助都会很棒。谢谢!
答案 0 :(得分:2)
看起来您的字符串可能是Base64编码的,在这种情况下,您可以使用它将其转换为字节:
Dim report As Byte() = Convert.FromBase64String(reportString)