Example usage for org.apache.poi.poifs.filesystem POIFSFileSystem createDocument

List of usage examples for org.apache.poi.poifs.filesystem POIFSFileSystem createDocument

Introduction

In this page you can find the example usage for org.apache.poi.poifs.filesystem POIFSFileSystem createDocument.

Prototype


public DocumentEntry createDocument(final InputStream stream, final String name) throws IOException 

Source Link

Document

Create a new document to be added to the root directory

Usage

From source file:org.apache.cocoon.components.elementprocessor.impl.poi.hssf.elements.Workbook.java

License:Apache License

/**
 * write self to a filesystem//www  . j  a  v  a  2s.c  om
 * @param filesystem the filesystem to be written to
 * @exception IOException
 */
void write(final POIFSFileSystem filesystem) throws IOException {
    filesystem.createDocument(new ByteArrayInputStream(_workbook.getBytes()), "Workbook");
}

From source file:poi.hpsf.examples.WriteTitle.java

License:Apache License

/**
 * <p>Runs the example program.</p>
 *
 * @param args Command-line arguments. The first and only command-line 
 * argument is the name of the POI file system to create.
 * @throws java.io.IOException if any I/O exception occurs.
 * @throws WritingNotSupportedException if HPSF does not (yet) support 
 * writing a certain property type./*from   ww w .  j av a2s.  c  o m*/
 */
public static void main(final String[] args) throws WritingNotSupportedException, IOException {
    /* Check whether we have exactly one command-line argument. */
    if (args.length != 1) {
        System.err.println("Usage: " + WriteTitle.class.getName() + "destinationPOIFS");
        System.exit(1);
    }

    final String fileName = args[0];

    /* Create a mutable property set. Initially it contains a single section
     * with no properties. */
    final MutablePropertySet mps = new MutablePropertySet();

    /* Retrieve the section the property set already contains. */
    final MutableSection ms = (MutableSection) mps.getSections().get(0);

    /* Turn the property set into a summary information property. This is
     * done by setting the format ID of its first section to
     * SectionIDMap.SUMMARY_INFORMATION_ID. */
    ms.setFormatID(SectionIDMap.SUMMARY_INFORMATION_ID);

    /* Create an empty property. */
    final MutableProperty p = new MutableProperty();

    /* Fill the property with appropriate settings so that it specifies the
     * document's title. */
    p.setID(PropertyIDMap.PID_TITLE);
    p.setType(Variant.VT_LPWSTR);
    p.setValue("Sample title");

    /* Place the property into the section. */
    ms.setProperty(p);

    /* Create the POI file system the property set is to be written to. */
    final POIFSFileSystem poiFs = new POIFSFileSystem();

    /* For writing the property set into a POI file system it has to be
     * handed over to the POIFS.createDocument() method as an input stream
     * which produces the bytes making out the property set stream. */
    final InputStream is = mps.toInputStream();

    /* Create the summary information property set in the POI file
     * system. It is given the default name most (if not all) summary
     * information property sets have. */
    poiFs.createDocument(is, SummaryInformation.DEFAULT_STREAM_NAME);

    /* Write the whole POI file system to a disk file. */
    poiFs.writeFilesystem(new FileOutputStream(fileName));
}