我正在写一个C#程序来将FoxPro数据库导入到数据表中,除了备注字段是空白或一些奇怪的字符之外,其他所有工作都可以使用。 我正在使用C#.Net 2.0。 我试过Jonathan Demarks于1月12日发布的代码。我能够获得索引,但我不知道如何使用此索引从备忘录文件中获取数据。如何使用.NET从FoxPro备注字段中提取数据?
Pleaese帮助我。
感谢 马杜
我正在写一个C#程序来将FoxPro数据库导入到数据表中,除了备注字段是空白或一些奇怪的字符之外,其他所有工作都可以使用。 我正在使用C#.Net 2.0。 我试过Jonathan Demarks于1月12日发布的代码。我能够获得索引,但我不知道如何使用此索引从备忘录文件中获取数据。如何使用.NET从FoxPro备注字段中提取数据?
Pleaese帮助我。
感谢 马杜
您是否尝试过使用FoxPro OLEDB provider?如果数据库不使用VFP8或9引入的功能(特别是数据库事件),则也可以使用ODBC驱动程序。
这些通用字段是包含文档或图像,还是文本备忘录或二进制备忘录?你用什么代码来提取数据?
我创建了下面的函数,将选择返回的对象转换为字节数组。
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#本机字符串中的值,并且可以执行您想要的操作。
嗨,斯图尔特,比Q 二进制备忘录。 OleDbConnection Conn = new OleDbConnection(@“Provider = VFPOLEDB.1; Data Source = C:\ Documents and Settings \ All Users \ Documents \ LSP \ LEVEL2.dbf”); Conn.Open(); Oledbadapter da = new OleDbDataAdapter(“Select * From LEVEL2”,Conn); da.fill(ds);我正在尝试阅读每个字段 – 2009-04-16 19:52:30