Managing Document Properties

Possible Usage Scenario

Aspose.Cells allows you to work with Built-In and Custom document properties. Here is the Microsoft Excel interface to open these Document Properties. Just click on the Advanced Properties as shown in this screenshot and view them.

todo:image_alt_text

Managing Document Properties

The following sample code loads sample excel file and reads the built-in document properties e.g. Title, Subject and then changes them. Then it also reads the custom document property i.e. MyCustom1 and then adds a new custom document property i.e. MyCustom5 and writes the output excel file. The following screenshot shows the effect of the sample code on the sample excel file.

todo:image_alt_text

Sample Code

Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Source directory path
U16String dirPath(u"..\\Data\\LoadingSavingAndConverting\\");
//Output directory path
U16String outPath(u"..\\Data\\Output\\");
//Paths of source and output excel files
U16String samplePath(dirPath + u"sampleManagingDocumentProperties.xlsx");
U16String outputPath(outPath + u"outputManagingDocumentProperties.xlsx");
//Load the sample excel file
Workbook wb(samplePath);
//Read built-in title and subject properties
U16String strTitle = wb.GetBuiltInDocumentProperties().GetTitle();
U16String strSubject = wb.GetBuiltInDocumentProperties().GetSubject();
U16String title(u"Title: ");
std::cout << title.ToUtf8() << strTitle.ToUtf8() << std::endl;
U16String subject(u"Subject: ");
std::cout << subject.ToUtf8()<<strSubject.ToUtf8() << std::endl;
//Modify built-in title and subject properties
strTitle = u"Aspose.Cells New Title";
strSubject = u"Aspose.Cells New Subject";
wb.GetBuiltInDocumentProperties().SetTitle(strTitle);
wb.GetBuiltInDocumentProperties().SetSubject(strSubject);
//Read the custom property
U16String strCustomPropName(u"MyCustom1");
U16String strCustomPropValue = wb.GetCustomDocumentProperties().Get(strCustomPropName).ToString();
U16String myCustom1(u"\r\nMyCustom1: ");
std::cout << myCustom1.ToUtf8()<<strCustomPropValue.ToUtf8() << std::endl;
//Add a new custom property
strCustomPropName = u"MyCustom5";
strCustomPropValue = u"This is my custom five.";
wb.GetCustomDocumentProperties().Add(strCustomPropName, strCustomPropValue);
//Save the output excel file
wb.Save(outputPath);
Aspose::Cells::Cleanup();

Console Output

This is the console output of the above sample code when executed with the provided sample excel file.

 Title: Aspose Team

Subject: Aspose.Cells for C++

MyCustom1: This is my custom one.