public class PropertyType
Example:
Document doc = new Document();
CustomDocumentProperties properties = doc.getCustomDocumentProperties();
Assert.assertEquals(0, properties.getCount());
// Custom document properties are key-value pairs that we can add to the document.
properties.add("Authorized", true);
properties.add("Authorized By", "John Doe");
properties.add("Authorized Date", new Date());
properties.add("Authorized Revision", doc.getBuiltInDocumentProperties().getRevisionNumber());
properties.add("Authorized Amount", 123.45);
// The collection sorts the custom properties in alphabetic order.
Assert.assertEquals(1, properties.indexOf("Authorized Amount"));
Assert.assertEquals(5, properties.getCount());
// Print every custom property in the document.
Iterator<DocumentProperty> enumerator = properties.iterator();
while (enumerator.hasNext()) {
DocumentProperty property = enumerator.next();
System.out.println(MessageFormat.format("Name: \"{0}\"\n\tType: \"{1}\"\n\tValue: \"{2}\"", property.getName(), property.getType(), property.getValue()));
}
// Display the value of a custom property using a DOCPROPERTY field.
DocumentBuilder builder = new DocumentBuilder(doc);
FieldDocProperty field = (FieldDocProperty)builder.insertField(" DOCPROPERTY \"Authorized By\"");
field.update();
Assert.assertEquals("John Doe", field.getResult());
// We can find these custom properties in Microsoft Word via "File" -> "Properties" > "Advanced Properties" > "Custom".
doc.save(getArtifactsDir() + "DocumentProperties.DocumentPropertyCollection.docx");
// Below are three ways or removing custom properties from a document.
// 1 - Remove by index:
properties.removeAt(1);
Assert.assertFalse(properties.contains("Authorized Amount"));
Assert.assertEquals(4, properties.getCount());
// 2 - Remove by name:
properties.remove("Authorized Revision");
Assert.assertFalse(properties.contains("Authorized Revision"));
Assert.assertEquals(3, properties.getCount());
// 3 - Empty the entire collection at once:
properties.clear();
Assert.assertEquals(0, properties.getCount());
Field Summary | ||
---|---|---|
static final int | BOOLEAN | |
The property is a boolean value.
|
||
static final int | DATE_TIME | |
The property is a date time value.
|
||
static final int | DOUBLE | |
The property is a floating number.
|
||
static final int | NUMBER | |
The property is an integer number.
|
||
static final int | STRING | |
The property is a string value.
|
||
static final int | STRING_ARRAY | |
The property is an array of strings.
|
||
static final int | OBJECT_ARRAY | |
The property is an array of objects.
|
||
static final int | BYTE_ARRAY | |
The property is an array of bytes.
|
||
static final int | OTHER | |
The property is some other type.
|
public static final int BOOLEAN
public static final int DATE_TIME
public static final int DOUBLE
public static final int NUMBER
public static final int STRING
public static final int STRING_ARRAY
public static final int OBJECT_ARRAY
public static final int BYTE_ARRAY
public static final int OTHER