Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Aspose.Cells は DBF (dBASE) ファイルの読み取りと書き込みを完全にサポートします。既存の dBASE III および dBASE IV ファイルを Workbook オブジェクトに読み込み、豊富な Aspose.Cells API を使用してデータを操作し、ワークブックを DBF 形式に保存してレガシーデータベースアプリケーションで使用することができます。
DBF (DataBase File) は、1980年代初頭に dBASE によって導入されたレガシーデータベースファイル形式です。この形式は古いものですが、DBF ファイルは構造化データの保存、特に会計、GIS、その他の専門用途において、多くの業界で今でも広く使用されています。Aspose.Cells を使用すると、これらのレガシーファイルを最新の Java スプレッドシートワークフローにシームレスに統合できます。 このライブラリは DBF ファイルの読み取りと書き込みの両方をサポートしており、以下の機能を提供します。
Aspose.Cells は以下の DBF 形式のバージョンをサポートしています。
このライブラリは、以下の操作を包括的にサポートします。
DBF ファイルを扱う際は、以下の制約に留意してください。
YYYYMMDD 形式で保存されます。Aspose.Cells を使用すると、DBF ファイルから Workbook オブジェクトへのデータの読み込みが簡単に行えます。このライブラリは LoadOptions クラスを使用してソース形式を指定し、読み込みプロセス中にデータが正しく解釈されるようにします。
DBF ファイルを読み取るには、LoadOptions インスタンスを作成し、その LoadFormat プロパティを LoadFormat.Dbf に設定して、ファイルパスとともに Workbook コンストラクタに渡す必要があります。読み込みが完了すると、データは getWorksheets() コレクションを介してアクセス可能になり、セルの反復処理、値の抽出、必要に応じたデータの操作を行うことができます。
次の例は、既存の DBF ファイルを Aspose.Cells に読み込み、最初のワークシートにアクセスしてセルの値を読み取る方法を示しています。
import com.aspose.cells.*;
import java.io.File;
String dataDir = "Data/";
String filePath = new File(new File(dataDir), "example.dbf").getPath();
LoadOptions loadOptions = new LoadOptions(LoadFormat.DBF);
Workbook workbook = new Workbook(filePath, loadOptions);
Worksheet worksheet = workbook.getWorksheets().get(0);
Cells cells = worksheet.getCells();
StringBuilder sb = new StringBuilder();
int maxRow = cells.getMaxDataRow();
int maxCol = cells.getMaxDataColumn();
for (int i = 0; i <= maxRow; i++)
{
for (int j = 0; j <= maxCol; j++)
{
Cell cell = cells.get(i, j);
String value = cell.getStringValue();
sb.append("|").append(value);
}
sb.append("|").append(System.lineSeparator());
}
System.out.println(sb.toString());
String outputPath = new File(new File(dataDir), "output.xlsx").getPath();
workbook.save(outputPath, SaveFormat.XLSX);
System.out.println("DBF file loaded successfully. Converted XLSX saved at: " + outputPath);
[ファイルを開く] ダイアログでファイルを選択することで、Microsoft Excel で DBF ファイルを直接開くことができます。Excel は DBF ファイルをスプレッドシートとして扱い、そのレコードをテーブルレイアウトで表示します。これは、Aspose.Cells で読み取りまたは書き込みを行った後にデータをすばやく確認する場合に便利です。
DBF ファイルへのデータの書き込みは、Aspose.Cells での他のスプレッドシート形式の保存と同様のパターンに従います。Workbook を作成または読み込み、ワークシートにデータを入力してから、ターゲット形式として SaveFormat.Dbf を指定して save メソッドを呼び出します。
DBF ファイルを作成するには、次の手順に従います。
Workbook インスタンスを作成します。getWorksheets() コレクションから最初のワークシートにアクセスします。SaveFormat.Dbf をパラメータとして Workbook.save メソッドを呼び出します。
次の例は、新しい DBF ファイルを最初から作成する方法を示しています。DBF 形式にエクスポートする際にフィールド型がどのように処理されるかを示すため、文字列、数値、日付など、さまざまなデータ型を含むサンプルデータがワークシートに入力されます。import com.aspose.cells.*;
import java.io.File;
import java.util.GregorianCalendar;
String outputDir = "C:\\Output\\";
String filePath = new File(new File(outputDir), "output.dbf").getPath();
if (!new File(outputDir).exists())
{
new File(outputDir).mkdirs();
}
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
Cells cells = worksheet.getCells();
// 列ヘッダー
cells.get(0, 0).putValue("ID");
cells.get(0, 1).putValue("Name");
cells.get(0, 2).putValue("Department");
cells.get(0, 3).putValue("Salary");
cells.get(0, 4).putValue("HireDate");
// データ行 1
cells.get(1, 0).putValue(101);
cells.get(1, 1).putValue("John Smith");
cells.get(1, 2).putValue("Engineering");
cells.get(1, 3).putValue(75000.50);
cells.get(1, 4).putValue(new GregorianCalendar(2020, 2, 15).getTime());
// データ行 2
cells.get(2, 0).putValue(102);
cells.get(2, 1).putValue("Jane Doe");
cells.get(2, 2).putValue("Marketing");
cells.get(2, 3).putValue(68000.75);
cells.get(2, 4).putValue(new GregorianCalendar(2019, 6, 22).getTime());
// データ行 3
cells.get(3, 0).putValue(103);
cells.get(3, 1).putValue("Bob Johnson");
cells.get(3, 2).putValue("Finance");
cells.get(3, 3).putValue(82000.00);
cells.get(3, 4).putValue(new GregorianCalendar(2021, 0, 10).getTime());
// データ行 4
cells.get(4, 0).putValue(104);
cells.get(4, 1).putValue("Alice Brown");
cells.get(4, 2).putValue("Human Resources");
cells.get(4, 3).putValue(71000.25);
cells.get(4, 4).putValue(new GregorianCalendar(2018, 10, 5).getTime());
// データ行 5
cells.get(5, 0).putValue(105);
cells.get(5, 1).putValue("Charlie Wilson");
cells.get(5, 2).putValue("Operations");
cells.get(5, 3).putValue(79500.80);
cells.get(5, 4).putValue(new GregorianCalendar(2022, 4, 30).getTime());
// 可読性を向上させるために列幅を設定
worksheet.getCells().setColumnWidth(0, 8);
worksheet.getCells().setColumnWidth(1, 20);
worksheet.getCells().setColumnWidth(2, 20);
worksheet.getCells().setColumnWidth(3, 12);
worksheet.getCells().setColumnWidth(4, 14);
workbook.save(filePath, SaveFormat.DBF);
DBF ファイルにデータを書き込む際は、データが形式の制限に準拠していることを確認してください。フィールド名は 10 文字以内とし、スペースを含めないでください。合計で 4000 バイトを超えるレコードは正しく保存されません。日付は YYYYMMDD 形式で表現できる有効な日付値である必要があります。
Aspose.Cells と DBF 形式の間でデータを転送する場合、2 つのシステム間でデータ型がどのようにマッピングされるかを理解することは、データの整合性を確保するために重要です。
Aspose.Cells のセル値は、保存時に適切な DBF フィールド型に自動的に変換されます。
YYYYMMDD 形式の日付 (D) フィールドにマッピングされます。DBF ファイルは、作成元のアプリケーションによって異なる文字エンコーディングを使用する場合があります。Aspose.Cells はほとんどの場合エンコーディングを透過的に処理しますが、文字の表示に関する問題が発生した場合は、ソースファイルのエンコーディングを確認する必要があるかもしれません。
DBF フィールド名は次の規則に従う必要があります。
DBF ファイルを書き込んだ後、Microsoft Excel または任意の dBASE 互換アプリケーションで開くことで結果を検証できます。データは、列ヘッダーとしてフィールド名が配置され、提供したデータに従ってレコードが入力された表形式で表示されるはずです。
Aspose.Cells を使用して DBF ファイルを読み書きする最も実用的なユースケースの 1 つは、DBF 形式と XLSX、XLS、CSV などの最新のスプレッドシート形式の間でデータを変換することです。Aspose.Cells は幅広い形式をサポートしているため、DBF ファイルを読み込んで他のサポートされている任意の形式で再保存したり、その逆を行ったりすることが簡単にできます。 たとえば、DBF ファイルを読み取り、Aspose.Cells API を使用して書式設定や計算を適用してから、結果を XLSX ファイルとして保存することで、最新のスプレッドシートアプリケーションを使用するユーザーに配布できます。逆に、XLSX または CSV ファイルからデータを取得して DBF 形式にエクスポートし、レガシーシステムと統合することもできます。
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.