SXCからExcelへの変換

Java を使用して SXC を Excel に変換する

SXC は、StarOffice スイートの Calc ソフトウェアで作成されるファイルのデフォルト形式です。これらのファイルには、数式、関数、マクロ、グラフをサポートするスプレッドシートと、インポートされた生のデータを自動的に個別化して概要を提供できる DataPilot グラフが含まれています。 StarOffice は、2011 年に廃止されるまで一時的に Oracle Open Office として知られていた独自のオフィス スイートでした。 SXC ファイルは、他のオフィス スイート (Apache OpenOffice、LibreOffice、IBM Lotus Symphony、NeoOffice など) と互換性がありました。しかし、StarOffice は廃止されたため、従来のドキュメントを同じ形式で保持している組織もあるかもしれません。それに反して、現在では、Open Office Excel や Open Office スプレッドシートの代わりに Excel ワークシートが広く使用されています。データを意味のある形式で管理、分析、表示するための素晴らしい機能を提供します。したがって、Excel ファイルはビジネスでも個人的な使用でも同様に重要になっています。そこでこの記事では、REST API を使用して SXC を Excel に変換する手順を学びます。

SXC から Excel への変換 API

当社の Aspose.Cells Cloud SDK for Java は、Java アプリケーション内で Excel ワークシートを作成、操作、他のさまざまな形式に変換するために非常に人気があります。そのため、コード行が少なくなり、一般的なワークシート形式をロードして変換し、他の目的の形式に変換するオプションが得られます。使用を開始するには、Maven ビルド タイプ プロジェクトの pom.xml に次の詳細を追加してください。

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-cells-cloud</artifactId>
        <version>22.8</version>
    </dependency>
</dependencies>

SDK リファレンスを追加したら、Aspose Cloud で無料アカウントを作成する必要があります。新しく作成したアカウントを使用してログインし、クラウド ダッシュボードでクライアント ID とクライアント シークレットを検索/作成します。これらの詳細は後続のセクションで必要になります。

SXC を Excel にエクスポート - ローカル ストレージ

このセクションでは、最初に入力 Excel をクラウド ストレージにアップロードせずに Excel を JSON に変換する方法について詳しく説明します。ただし、結果の JSON ファイルはクラウド ストレージに保存されます。

  • まず、ClientID とクライアント シークレットの詳細を引数として指定して CellsApi オブジェクトを作成します。
  • 次に、ソース SXC ファイルをロードするファイル インスタンスを作成します。
  • 次に、入力 SXC ファイル名、XLS としての結果の形式、および出力ファイルの名前を必要とする、cellsWorkbookPutConvertWorkbook(…) メソッドを呼び出します。変換が成功すると、XLS ファイルはクラウド ストレージに保存されます。
// その他の例については、https://github.com/aspose-cells-cloud/aspose-cells-cloud-java をご覧ください。

try
    {
    // https://dashboard.aspose.cloud/ から ClientID と ClientSecret を取得します。
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
  
    // クライアント認証情報を使用して CellsApi のインスタンスを作成する
    CellsApi api = new CellsApi(clientId,clientSecret);

    // 入力タブ区切り値ファイルの名前
    String fileName = "source.sxc";
	    
    // ワークブックが暗号化されている場合のパスワードの詳細
    String password = null;
  
    // ローカルシステムからファイルをロードする
    File file = new File("/Users/nayyer/"+fileName);	
	    	    
    // ドキュメント変換操作を実行する
    api.cellsWorkbookPutConvertWorkbook(file, format, password, "output.xls", "default", null);  
	    
    // 成功メッセージを出力する
    System.out.println("Successsul conversion of Open Office Spreadsheets (SXC) to Excel !");
    }catch(Exception ex)
    {
        System.out.println(ex.getMessage());
    }

Java を使用して Office Excel を XLS に開く

また、クラウド ストレージから Open office Excel (SXC) をロードし、Excel (XLS、XLSX など) への変換を実行する機会もあります。したがって、既存のファイルをロードすることも、最初にファイルをアップロードして変換操作中にそれを参照することもできます。このアプローチでは、結果のファイルもクラウド ストレージに保存されます。

  • まず、ClientID とクライアント シークレットの詳細を引数として指定して CellsApi オブジェクトを作成します。
  • 次に、入力 SXC ワークブックをロードするための File インスタンスを作成します。
  • 次に、uploadFile(…) メソッドを呼び出して、SXC ファイルをクラウド ストレージにアップロードします。
  • 最後に、cellsWorkbookGetWorkbook(…) メソッドを呼び出します。このメソッドには、入力 SXC ファイルの名前、XLS としての結果の形式、およびその名前が必要です。変換後、出力はクラウド ストレージに保存されます。
// その他の例については、https://github.com/aspose-cells-cloud/aspose-cells-cloud-java をご覧ください。

try
    {
    // https://dashboard.aspose.cloud/ から ClientID と ClientSecret を取得します。
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
  
    // クライアント認証情報を使用して CellsApi のインスタンスを作成する
    CellsApi api = new CellsApi(clientId,clientSecret);

    // 入力タブ区切り値ファイルの名前
    String fileName = "source.sxc";
	    
    // ワークブックが暗号化されている場合のパスワードの詳細
    String password = null;
  
    // ワークブックの行を自動調整するように設定するかどうかを指定します。
    Boolean isAutoFit = true;
	  // テーブルデータのみを保存するかどうかを指定します。 PDFからExcelまでのみ使用されます。
	  Boolean onlySaveTable = true;
	  
    // 結果のファイル形式
	  String format = "XLS";
    
    // ローカル システムから SXC ファイルを読み取る
    File file = new File("/Users/nayyer/"+fileName);	
	    	    
    // ソース SXC をクラウド ストレージにアップロードする
	  api.uploadFile("source.sxc", file, "default");
  
    // ドキュメント変換操作を実行する
    api.cellsWorkbookGetWorkbook("source.sxc", password, format, 
	    			            isAutoFit, onlySaveTable, null,"default", "Output.xls","default", null);  
	    
    // 成功メッセージを出力する
    System.out.println("Successsul conversion of Open Office Spreadsheets (SXC) to Excel !");
    }catch(Exception ex)
    {
        System.out.println(ex.getMessage());
    }
SXC から Excel へのプレビュー

画像1:- SXCからExcelへの変換プレビュー

参考までに、ソース SXC と結果の XLS は source.sxcoutput.xls で共有されています。

cURL コマンドを使用して Open Office スプレッドシートを Excel にエクスポート

REST API は cURL コマンド経由で簡単にアクセスできるため、このセクションでは、要件を達成するために cURL コマンド経由で Aspose.Cells Cloud を呼び出します。この操作の前提条件の 1 つは、次のコマンドの実行中に (クライアントの資格情報に基づいて) JWT アクセス トークンを生成することです。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

JWT トークンを取得したら、次のコマンドを実行して、オープン オフィス スプレッドシートを XLS に変換する必要があります。結果の XLS はクラウド ストレージに保存されます。

curl -v -X GET "https://api.aspose.cloud/v3.0/cells/source.sxc?format=XLS&isAutoFit=false&onlySaveTable=false&outPath=output.xls&checkExcelRestriction=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

結論

この記事では、Java コード スニペットを使用した Open Office Spreadsheets (SXC) から XLS、XLSX などの形式への変換について説明しました。同様に、コマンド ライン ターミナルで cURL コマンドを実行しながら、それを使用して SXC を Excel に変換するオプションも検討しました。 Open Office Excel (SXC) を XLS に変換するもう 1 つの利点は、この新しいファイルのサイズが削減/最適化されることです。すべての Cloud SDK は MIT ライセンスに基づいて構築されているため、完全なソース コードは GitHub からダウンロードできることに注意してください。問題を迅速に解決するには、無料の 製品サポート フォーラム を通じて当社に連絡することを検討してください。

関連記事

詳細については、次のリンクにアクセスすることを強くお勧めします。