是否可以将字节数组转换为ADODB.Stream?

问题描述 投票:0回答:1

我正在使用旧的Resume解析器系统,该系统使用方法ProcessStream(ref Stream oStream),其中Stream的类型为ADODB.Stream。我有一个字节数组,我想转换为该流,但是我无法。我尝试将字节数组转换为IO Stream,然后将其强制转换为ADODB.Stream,但这也不起作用。

This is the documentation for the method i want to call

任何帮助将不胜感激。谢谢!

c# asp.net vb.net adodb
1个回答
0
投票

我为您制定了两种可能的解决方案。

方法1从文件将数据加载到ADODB.Stream

[TestMethod]
public void Test1()
{
    String someString = "Sample string";
    Byte[] bytes = Encoding.ASCII.GetBytes(someString);

    File.WriteAllBytes("D:\\test.txt", bytes);

    ADODB.Stream stream = new ADODB.Stream();
    stream.Open();
    stream.Type = ADODB.StreamTypeEnum.adTypeBinary;
    stream.LoadFromFile("D:\\test.txt");

    dynamic readData = stream.Read(someString.Length);
}

方法2从内存中的字节数组将数据加载到ADODB.Stream

[TestMethod]
public void Test2()
{
    String someString = "Sample string";
    Byte[] bytes = Encoding.ASCII.GetBytes(someString);

    ADODB.Stream stream = new ADODB.Stream();
    stream.Open();
    stream.Type = ADODB.StreamTypeEnum.adTypeBinary;
    stream.Write(bytes);

    stream.Position = 0;

    dynamic readData = stream.Read(someString.Length);
}

在每种方法的末尾,我检查了readData变量,并保存了与原始“字节”字节数组相同的数据。

© www.soinside.com 2019 - 2024. All rights reserved.