C++を使用してスプレッドシートをCSV形式にエクスポートする際に先頭の空白行と列をトリム
Contents
[
Hide
]
可能な使用シナリオ
時には、ExcelやCSVファイルの先頭に空白行や列が存在します。例えば、この行を考えてみてください:
,,,data1,data2
ここでは、最初の3つのセルまたは列が空白です。 このようなCSVファイルをMicrosoft Excelで開くと、Microsoft Excelはこれらの先行する空白行と列を破棄します。
デフォルトでは、Aspose.Cellsは先行する空白の列と行を保存時に破棄しませんが、Microsoft Excelと同様にそれらを除去したい場合は、Aspose.CellsがTxtSaveOptions.GetTrimLeadingBlankRowAndColumn()を提供します。 それをtrueに設定すると、すべての先行する空白行と列が保存時に破棄されます。
Aspose.Cells for C++ 20.4リリース以前は、TxtSaveOptions.GetTrimLeadingBlankRowAndColumn()のデフォルト値はfalseでした。20.4リリース以降は、TxtSaveOptions.GetTrimLeadingBlankRowAndColumn()のデフォルト値はtrueです。
スプレッドシートをCSV形式にエクスポートする際に先行する空白行と列をトリミングします。
ソースExcelファイルをロードします。先に変更せずにExcelファイルをCSV形式で保存し、その後TxtSaveOptions.GetTrimLeadingBlankRowAndColumn()プロパティをtrueに設定して再度保存します。スクリーンショットには、ソースExcelファイル、トリミングを行わない出力CSVファイル、およびトリミングを行った出力CSVファイルが含まれています。
サンプルコード
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input excel file
U16String inputFilePath = srcDir + u"sampleTrimBlankColumns.xlsx";
// Create workbook
Workbook wb(inputFilePath);
// Save in csv format without trimming blank columns
wb.Save(outDir + u"outputWithoutTrimBlankColumns.csv", SaveFormat::Csv);
// Create TxtSaveOptions and set TrimLeadingBlankRowAndColumn to true
TxtSaveOptions opts;
opts.SetTrimLeadingBlankRowAndColumn(true);
// Save in csv format with trimming blank columns
wb.Save(outDir + u"outputTrimBlankColumns.csv", opts);
std::cout << "Files saved successfully!" << std::endl;
Aspose::Cells::Cleanup();
}