0

dBase II または III のみを受け入れるレガシー システムにインポートする dbf ファイルを生成しています。私のアプリケーションは.Net 3.5です。私は最初にこのコンポーネント VFPOLEDB.1 を使い始めましたが、下位互換性がない dBase V 形式の dbf ファイルしか生成しません。

dBase II または III で de dbf ファイルを生成するためのコンポーネントまたはドライバを知っている人

ありがとう

4

3 に答える 3

1

ファイルを開くスクリプトを実行するための呼び出しを発行してみてください。

COPY TO {some file} タイプ FOX2X

それはあなたに出力を得るはずです...

同様のすべてが VFPOleDB を介して C# 経由で行われている別の投稿がありました。それを見つけようとします... うん、そして @DaveB の功績により、読み取り可能な C# コードで .DBF を作成するでの彼の投稿のスニペットを次に示します。 Excel から (VFP かどうか)

 string connectionString = @"Provider=VFPOLEDB.1;Data Source=C:\YourDirectory\"; 

    using (OleDbConnection connection = new OleDbConnection(connectionString)) 
    { 
        using (OleDbCommand scriptCommand = connection.CreateCommand()) 
        { 
            connection.Open(); 

            string vfpScript = @"USE TestDBF 
                                 COPY TO OldDBaseFormatFile TYPE Fox2x 
                                USE"; 

            scriptCommand.CommandType = CommandType.StoredProcedure; 
            scriptCommand.CommandText = "ExecScript"; 
            scriptCommand.Parameters.Add("myScript", OleDbType.Char).Value = vfpScript; 
            scriptCommand.ExecuteNonQuery(); 
        } 
    } 

元の投稿は、誰かがファイルを Excel 形式で開くことができるようにするためのものでした。

于 2010-10-01T18:13:16.203 に答える
0

ESRIのShapefile形式は、属性データの格納にdBaseIIIを使用します。SharpMapプロジェクトには、独立して使用できるはずの適切な実装があります(ただし、ライセンスに注意してください。これはLGPLです)。

http://code.google.com/p/sharpmapv2/source/browse/trunk/SharpMap.Data.Providers/ShapeFileProvider/DbaseFile.cs

于 2010-10-01T18:16:54.793 に答える
0

数年前にまさにこれをやろうとして失敗したことを覚えています。私の解決策は、既存の dBase II ファイルを取得し、すべてのデータを空にして、新しいデータベースを作成する必要があるときのために、その空のファイルをテンプレートとして保持することでした。

于 2010-09-30T17:29:20.567 に答える