1

我正在编写一个 C# 程序以将 FoxPro 数据库放入数据表中,除了备注字段为空白或某些奇怪字符外,一切正常。我正在使用 C# .Net 2.0。我尝试了 Jonathan Demarks 于 1 月 12 日发布的代码。我能够获取索引,但我不知道如何使用该索引从备忘录文件中获取数据。

请帮帮我。

谢谢马杜

4

2 回答 2

1

我创建了以下函数,将选择返回的对象转换为字节数组。

private byte[] ObjectToByteArray(Object obj)
{
    if (obj == null)
    {
        return null;
    }

    BinaryFormatter bf = new BinaryFormatter();
    MemoryStream ms = new MemoryStream();
    bf.Serialize(ms, obj);
    return ms.ToArray();
}

然后您就可以显示该值。

byte [] dBytes = ConvertObjectToByteArray(dr["profile"]);
System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
string str = enc.GetString(dBytes);

您现在拥有 C# 本机字符串中的值,并且可以用它做任何您想做的事情。

于 2009-06-25T11:22:02.807 回答
0

您是否尝试过使用FoxPro OLEDB 提供程序?如果数据库不使用 VFP8 或 9 引入的功能(特别是数据库事件),您也可以使用 ODBC 驱动程序。

这些通用字段是否包含文档或图像,或文本备忘录或二进制备忘录?您使用什么代码来提取数据?

于 2009-04-16T19:29:43.543 回答