XLS XLSXをC#でCSVに変換する

XLSとXLSXは、MSExcelスプレッドシートで最もよく使用されている形式です。今世紀中のこれらのフォーマットに対するMicrosoftOfficeの拡張機能と無数のフォーマットオプションをよく知っておく必要があります。一方、** CSV ファイルはコンマ区切りの値であり、通常、フォーマットせずに表形式のデータを格納するために使用されます。これらのファイルは、任意のテキストエディタで表示でき、表形式の場合はMSExcelでも表示できます。この記事では、 XLS /XLSX形式のExcelスプレッドシートをCSV形式に変換し、CSVをXLS/ XLSX形式にプログラムでC#**を使用して変換する方法について説明します。

以下のトピックについて説明します。

ExcelファイルとCSV変換用の.NETAPI

GroupDocs.Conversionは、さまざまなドキュメントと画像ファイル形式の相互変換を自動化できる.NETAPIを提供します。このAPIを使用してXLSXをCSVに変換し、次にC#を使用してCSVをXLSまたはXLSXに変換します。 APIは、スプレッドシート形式に加えて、ワードプロセッシングドキュメント、プレゼンテーション、eBook、JPG、PNG、WebPなどの他の多くのドキュメントおよび画像形式の前後変換をサポートしています。

ダウンロードセクションからDLLまたはMSIインストーラーをダウンロードするか、NuGetを介して.NETアプリケーションにAPIをインストールできます。

PM> Install-Package GroupDocs.Conversion

Excel(XLS / XLSX) をC#でCSVに変換する

XLSまたはXLSX形式の表形式で適切にフォーマットされたデータから始めて、フォーマットされていないコンマ区切りのCSV形式に変換してみましょう。次の手順では、.NETアプリケーション内でXLSまたはXLSX形式をCSVに変換できます。

  • Converterクラスを使用してExcelファイル(XLSまたはXLSX) をロードします。 *開始ワークシート番号とシート数を設定します。 (オプション) ※SpreadsheetConvertOptionsで出力ファイルの変換形式をCSVに設定してください。
  • Convertメソッドを呼び出して、スプレッドシートデータまたは特定のページをCSV形式に変換します。

次のコードは、XLSまたはXLSXをC#でCSV形式に変換する方法を示しています。

// ExcelスプレッドシートをC#のコンマ区切り値CSV形式に変換します
string inputFile = @"path/spreadsheet.xlsx";
string outputFile = @"path/comma-sparated-values.csv";

using (Converter converter = new Converter(inputFile))
{
    SpreadsheetConvertOptions options = new SpreadsheetConvertOptions
    {
        PageNumber = 2,
        PagesCount = 1,
        Format = SpreadsheetFileType.Csv // Specify the conversion format
    };
    converter.Convert(outputFile, options);
}

C#でCSVをExcel(XLS / XLSX) に変換する

逆に、コンマ区切りのデータがあり、それを適切な形式の表形式に変換する場合は、そのCSVデータをXLSまたはXLSX形式に変換する必要があります。次の手順は、C#を使用してCSVファイルをMSExcelXLSX形式に変換する方法を示しています。

  • CSVファイルの読み込みオプションを準備し、区切り文字を定義します。 ※ConverterクラスでCSVを読み込みます。
  • SpreadsheetConvertOptionsを使用して、変換形式をXLSXに設定します。
  • Convertメソッドを使用して、CSVデータをXLSX形式に変換します。

次のコードは、CSVファイルをC#でXLSX形式に変換する方法を示しています。

// CSVファイルをC#でXLS/XLSX形式に変換します
string inputFile = @"path/comma-sparated-values.csv";
string outputFile = @"path/spreadsheet.xlsx";

Contracts.Func<LoadOptions> getLoadOptions = () => new CsvLoadOptions
{
    Separator = ','
};

using (Converter converter = new Converter(inputFile))
{
    SpreadsheetConvertOptions options = new SpreadsheetConvertOptions();
    converter.Convert(outputFile, options);
}

それに応じて変換形式を設定し、XLSまたはその他のファイル形式の拡張子を付けて適切なファイル名を指定するだけです。

無料のAPIライセンスを取得する

評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得できます。

結論

記事を要約すると、C#を使用したMSExcelスプレッドシートXLS/XLSXおよびCSVファイルの前後の変換について学習しました。 .NET Conversion Automation APIの詳細については、ドキュメントを使用するか、GitHubで利用可能な例を体験してください。 フォーラムからお問い合わせください。

関連記事

関連項目