Removing generated docs since Andy does it automatically from
build every 2 hours with a script. :-) git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352419 13f79535-47bb-0310-9956-ffa450edef68
|
@ -1,431 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>History of Changes</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>History of Changes</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">History of Changes</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 1.5-dev (03-April-2002)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="update" src="images/update.jpg"></icon>New project build.(NKB)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="update" src="images/update.jpg"></icon>New project documentation system based on Cocoon.(NKB)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="update" src="images/update.jpg"></icon>Package rename(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="fix" src="images/fix.jpg"></icon>Various bug fixes(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="add" src="images/add.jpg"></icon>Early stages of HSF development (not ready for development)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="add" src="images/add.jpg"></icon>Initial low level record support for charting (not complete)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 1.1.0 ()</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Created new event model(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Optimizations made to HSSF including aggregate records for
|
|
||||||
values, rows, etc.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>predictive sizing, offset based writing (instead of lots of
|
|
||||||
array copies)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>minor re-factoring and bug fixes.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 1.0.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Minor documentation updates.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.14.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added DataFormat helper class and exposed set and get format
|
|
||||||
on HSSFCellStyle(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Fixed column width apis (unit wise) and various javadoc on
|
|
||||||
the subject(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Fix for Dimensions record (again)... (one of these days I'll
|
|
||||||
write a unit test for this ;-p).(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Some optimization on sheet creation.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.13.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.12.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added MulBlank, Blank, ColInfo(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added log4j facility and removed all sys.out type logging(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added support for adding font's, styles and corresponding
|
|
||||||
high level api for styling cells(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>added support for changing row height, cell width and default
|
|
||||||
row height/cell width.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added fixes for internationalization (UTF-16 should work now
|
|
||||||
from HSSFCell.setStringValue, etc when the encoding is set)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>added support for adding/removing and naming sheets.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.11.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Bugfix release. We were throwing an exception when reading
|
|
||||||
RKRecord objects.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.10.0 (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Got continuation records to work (read/write)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added various pre-support for formulas(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Massive API reorganization, repackaging.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>BiffViewer class added for validating HSSF & POI and/or
|
|
||||||
HSSF Output.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Better API support for modification.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.7 (and interim releases) (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Added encoding flag to high and low level api to use utf-16
|
|
||||||
when needed (HSSFCell.setEncoding())(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>added read only support for Label records (which are
|
|
||||||
reinterpreted as LabelSST when written)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Broken continuation record implementation (oops)(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>BiffViewer class added for validating HSSF & POI and/or
|
|
||||||
HSSF Output.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b> 0.6 (release) (???)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Support for read/write and modify.(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<icon alt="" src="images/.jpg"></icon>Read only support for MulRK records (converted to Number when
|
|
||||||
writing)
|
|
||||||
(POI-DEVELOPERS)</li>
|
|
||||||
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,532 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Contribution to POI</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Contribution to POI</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Contribution to POI</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Introduction</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The POI Project is an <a href="http://www.opensource.org/">Open Source</a>
|
|
||||||
volunteer project released under a very open license.
|
|
||||||
This means there are many ways to contribute to the project - either
|
|
||||||
with direct participation (coding, documenting, answering questions,
|
|
||||||
proposing ideas, reporting bugs, suggesting bug fixes, etc. ...) or by resource
|
|
||||||
donations (money, time, publicity, hardware, software, conference
|
|
||||||
presentations, speeches, etc. ...).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
To begin with, we suggest you subscribe to the
|
|
||||||
<a href="mail-lists.html">POI mailing lists</a>
|
|
||||||
(follow the link for information on how to subscribe and to access the mail
|
|
||||||
list archives). Listen in for a while, to hear how others make contributions.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">You can get your local working copy of the
|
|
||||||
<a href="http://jakarta.apache.org/site/cvsindex.html">latest and
|
|
||||||
greatest code</a> (which you find in the jakarta-poi module in
|
|
||||||
the CVS code repository. Review the <a href="todo.html">todo</a> list and choose a task
|
|
||||||
(or perhaps you have noticed something that needs patching). Make the changes, do the testing,
|
|
||||||
generate a patch, and post to the dev mailing list. (Do not worry - the process is easy and
|
|
||||||
explained below.)
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Document writers are usually the most wanted people so if
|
|
||||||
you like to help but you're not familiar with the innermost technical details, don't worry:
|
|
||||||
we have work for you! And we'll be very available to you for any questions!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Help Wanted Here</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The rest of this document is mainly about
|
|
||||||
contributing new or improved code and/or documentation, but we would also be glad to have
|
|
||||||
extra help in any of the following areas:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Answering questions on the <code>users</code> mailing list - there is often a problem of
|
|
||||||
having too many questioners and not enough experts to respond to all the questions.</li>
|
|
||||||
|
|
||||||
<li>Testing POI (especially its less-frequently-used features) on various configurations
|
|
||||||
and reporting back.</li>
|
|
||||||
|
|
||||||
<li>Debugging - producing reproducible test cases and/or finding causes of bugs. Some known bugs are informally listed on
|
|
||||||
<a href="todo.html">To Do</a>, and some are recorded in Bugzilla
|
|
||||||
(see <a href="#procedure">explanation below</a>).</li>
|
|
||||||
|
|
||||||
<li>Specifying/analyzing/designing new features - and beyond. (If you wish to get involved
|
|
||||||
with this, please join the <code>general POI mailing list</code>
|
|
||||||
, install and try out POI
|
|
||||||
and read some of the <a href="mail-lists.html">mail archives</a>.
|
|
||||||
You should have a strong "fluency" in Java and a basic understanding of
|
|
||||||
the POI architecture - don't just say "it should have XYZ" without reading anything first -
|
|
||||||
because chances are, someone's already thought of that feature!)</li>
|
|
||||||
|
|
||||||
<li>Packaging easy-to-install packages (such as RPMs) for the myriad of possible configurations out
|
|
||||||
there. (The project does not maintain anything but the basic <code>.zip</code> and
|
|
||||||
<code>.tar.gz</code> packages, but anyone is welcome to build their own specific packages and
|
|
||||||
announce them on the <code>general POI list</code>)</li>
|
|
||||||
|
|
||||||
<li>... and there is just one other thing - don't forget to tell everyone who asks, how great POI is! ;-)
|
|
||||||
The more people that know about and start to use POI, the larger the pool of
|
|
||||||
potential contributors there will be.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>CVS Usage Precis</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">An overview of how to use CVS to participate in POI development.
|
|
||||||
Do not be afraid - you cannot accidently destroy the actual code repository,
|
|
||||||
because you are working with a local copy as an anonymous user.
|
|
||||||
You do not have the system permissions to change anything. You can only
|
|
||||||
update your local repository and compare your revisions with the real
|
|
||||||
repository.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
(Further general CVS usage information is at
|
|
||||||
<a href="http://www.cvshome.org/">www.cvshome.org</a> and your local
|
|
||||||
<code>info cvs</code> pages or <code>man cvs</code> pages or user
|
|
||||||
documentation.)
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Let us lead by example. We will show you how to establish your local
|
|
||||||
repository, how to keep it up-to-date, and how to generate the differences
|
|
||||||
to create a patch. (The commands are for Linux.)
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>CVS Committer with Secure Shell access</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">After a developer has consistently provided contributions (code,
|
|
||||||
documentation and discussion), then the rest of the dev community
|
|
||||||
may vote to grant this developer commit access to CVS.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">You will need secure access to the repository to be able to commit
|
|
||||||
patches. Here are some resources that help to get your machine configured
|
|
||||||
to use the repository over SSH.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://cvsbook.red-bean.com/">The CVS Book</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://www.cvshome.org/">www.cvshome.org</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="https://sourceforge.net/cvs/?group_id=32701"></a>
|
|
||||||
- See the bottom of the page for links to tips for UNIX and Windows.
|
|
||||||
Even if you are on UNIX, the Windows page will also help.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Procedure for Raising Development Issues</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
There are two methods for discussing development and submitting patches.
|
|
||||||
So that everyone can be productive, it is important to know which method
|
|
||||||
is appropriate for a certain situation and how to go about it without
|
|
||||||
confusion. This section explains when to use the
|
|
||||||
<code>developer</code> <a href="mail-lists.html">mailing list</a>
|
|
||||||
and the bug database.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Research your topic thoroughly before beginning to discuss a new
|
|
||||||
development issue. Search and browse through the email archives - your
|
|
||||||
issue may have been discussed before. Prepare your post clearly and
|
|
||||||
concisely.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Most issues will be discovered, resolved, and then patched quickly
|
|
||||||
via the <code>developer</code> mailing list. Larger issues, and ones that
|
|
||||||
are not yet fully understood or are hard to solve, are destined for
|
|
||||||
Bugzilla.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Experienced developers use Bugzilla directly, as they are very sure
|
|
||||||
when they have found a bug and when not. However, less experienced users
|
|
||||||
should first discuss it on the user or developer mailing list (as
|
|
||||||
appropriate). Impatient people frequently enter everything into Bugzilla
|
|
||||||
without caring if it is a bug in POI or their own
|
|
||||||
installation/configuration mistake - please, do not do this.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
As a rule-of-thumb, discuss an issue on the <code>developers</code>
|
|
||||||
mailing list first to work out any details.
|
|
||||||
After it is confirmed to be worthwhile, and you are clear about it,
|
|
||||||
then submit the bug description or patch via Bug Tracking.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
If you do not get any answer on your first attempt, post
|
|
||||||
your issue again until you get a reply. (But, please, not every hour - allow a few
|
|
||||||
days for the list to deal with it.) Do not be impatient - remember that
|
|
||||||
the whole world is busy, not just you. Bear in mind that other countries
|
|
||||||
will have holidays at different times to your country and that they are
|
|
||||||
in different time zones. You might also consider re-writing your initial
|
|
||||||
posting - perhaps it was not clear enough
|
|
||||||
and the readers' eyes glazed over.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Contribution Notes and Tips</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
This is a collection of tips for contributing to the project in a manner
|
|
||||||
that is productive for all parties.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Every contribution is worthwhile. Even if the ensuing discussion
|
|
||||||
proves it to be off-beam, then it may jog ideas for other people.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Use sensible and concise email subject headings. Search engines, and
|
|
||||||
humans trying to browse a voluminous list, will respond favorably to a
|
|
||||||
descriptive title.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>Start new threads with new Subjects for new topics, rather than
|
|
||||||
re-using the previous Subject line.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>Keep each topic focussed. If some new topic arises, start a new
|
|
||||||
discussion. This leaves the original topic to continue un-cluttered.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>Whenever you decide to start a new topic, then start with a fresh
|
|
||||||
new email message window. Do not use the "Reply to" button,
|
|
||||||
because threaded mail-readers get confused (they use the
|
|
||||||
<code>In-reply-to</code> header). Otherwise, your new topic will get
|
|
||||||
lost in the previous thread and go un-answered.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Prepend your email subject line with a marker when that is appropriate,
|
|
||||||
e.g. <code>[Patch]</code>, <code>[Proposal]</code>,
|
|
||||||
<code>[RT]</code> (Random Thought, these quickly blossom into research
|
|
||||||
topics :-), <code>[STATUS]</code> (development status of a certain
|
|
||||||
feature).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
When making changes to XML documentation, or any XML document for that
|
|
||||||
matter, use a
|
|
||||||
<a href="http://www.oasis-open.org/cover/">validating parser</a>
|
|
||||||
(one that is tried and true is
|
|
||||||
<a href="http://www.jclark.com/sp/">SP/nsgmls</a>).
|
|
||||||
This procedure will detect errors without having to go through the whole
|
|
||||||
<code>build docs</code> process to find them. Do not expect POI
|
|
||||||
or the build system to detect the validation errors for you - they can
|
|
||||||
do it, but that is not their purpose. (Anyway, nsgmls validation error
|
|
||||||
messages are more informative.). Andy wishes it to be known he uses
|
|
||||||
<a href="http://www.sourceforge.net/projects/jedit">jEdit</a>. For
|
|
||||||
his XML editing. (That is when he's not hacking it in 'vi' the true editor
|
|
||||||
and light of the text editing world!).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Remember that most people are participating in development on a
|
|
||||||
volunteer basis and in their "spare time". These enthusiasts will attempt
|
|
||||||
to respond to issues. It may take a little while to get your answers.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Research your topic thoroughly before beginning to discuss a new
|
|
||||||
development issue. Search and browse through the email archives - your
|
|
||||||
issue may have been discussed before. Do not just perceive a problem and
|
|
||||||
then rush out with a question - instead, delve.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Try to at least offer a partial solution and not just a problem statement.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Take the time to clearly explain your issue and write a concise email
|
|
||||||
message. Less confusion facilitates fast and complete resolution.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Do not bother to send an email reply that simply says "thanks".
|
|
||||||
When the issue is resolved, that is the finish - end of thread.
|
|
||||||
Reduce clutter.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
You would usually do any development work against the HEAD branch of CVS.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
When sending a patch, you usually do not need to worry about which CVS
|
|
||||||
branch it should be applied to. The maintainers of the repository will
|
|
||||||
decide.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
If an issue starts to get bogged down in list discussion, then it may
|
|
||||||
be appropriate to go into private off-list discussion with a few interested
|
|
||||||
other people. Spare the list from the gory details. Report a summary back
|
|
||||||
to the list to finalize the thread.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Become familiar with the mailing lists. As you browse and search, you will
|
|
||||||
see the way other people do things. Follow the leading examples.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,248 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Frequently Asked Questions</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Frequently Asked Questions</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Frequently Asked Questions</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Questions</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<jump anchor="faq-1">
|
|
||||||
What is the HSSF "eventmodel"?
|
|
||||||
</jump>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<jump anchor="faq-2">
|
|
||||||
Why can't read the document I created using Star Office 5.1?
|
|
||||||
</jump>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Answers</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<anchor id="faq-1"></anchor>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>
|
|
||||||
What is the HSSF "eventmodel"?
|
|
||||||
</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The HSSF eventmodel package is a new API for reading XLS files more efficiently. It does
|
|
||||||
require more knowledge on the part of the user, but reduces memory consumption by more than
|
|
||||||
tenfold. It is based on the AWT event model in combination with SAX. If you need read-only
|
|
||||||
access to a given XLS file, this is the best way to do it.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<anchor id="faq-2"></anchor>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>
|
|
||||||
Why can't read the document I created using Star Office 5.1?
|
|
||||||
</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Star Office 5.1 writes some records using the older BIFF standard. This causes some problems
|
|
||||||
with POI which supports only BIFF8.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,124 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HDF</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HDF</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HDF</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">HDF will be the name of OUR port of the Microsoft Word 97(-2002) file format to
|
|
||||||
pure Java.</p>
|
|
||||||
|
|
||||||
<p align="justify">HDF is still in early development. If you want to help us, you can
|
|
||||||
follow development on the poi-dev mailing list.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,274 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*"><font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Brief Project History</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The POI project was dreamed up back around April 2001, when
|
|
||||||
Andy Oliver landed a short term contract to do Java-based
|
|
||||||
reporting to Excel. He'd done this project a few times before
|
|
||||||
and knew right where to look for the tools he needed.
|
|
||||||
Ironically, the API he used to use had skyrocketed from around
|
|
||||||
$300 ($US) to around $10K ($US). He figured it would take two
|
|
||||||
people around six months to write an Excel port so he
|
|
||||||
recommended the client fork out the $10K.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Around June 2001, Andy started thinking how great it would
|
|
||||||
be to have an open source Java tool to do this and, while he
|
|
||||||
had some spare time, he started on the project and learned
|
|
||||||
about OLE 2 Compound Document Format. After hitting some real
|
|
||||||
stumpers he realized he'd need help. He posted a message to
|
|
||||||
his local Java User's Group (JUG) and asked if anyone else
|
|
||||||
would be interested. He lucked out and the most talented Java
|
|
||||||
programmer he'd ever met, Marc Johnson, joined the project. He
|
|
||||||
ran rings around Andy at porting OLE 2 CDF and rewrote his
|
|
||||||
skeletal code into a more sophisticated library. It took Marc
|
|
||||||
a few iterations to get something they were happy with.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">While Marc worked on that, Andy ported XLS to Java, based
|
|
||||||
on Marc's library. Several users wrote in asking to read XLS
|
|
||||||
(not just write as had originally been planned) and one user
|
|
||||||
had special requests for a different use for POIFS. Before
|
|
||||||
long, the project scope had tripled. POI 1.0 was released a
|
|
||||||
month later than planned, but with far more features. Marc
|
|
||||||
quickly wrote the serializer framework and HSSF Serializer in
|
|
||||||
record time and Andy banged out more documentation and worked
|
|
||||||
on making people aware of the project
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify"> Shortly before the release, POI was fortunate to come into
|
|
||||||
contact with Nicola -Ken- Barrozzi who gave them samples for
|
|
||||||
the HSSF Serializer and help uncover its unfortunate bugs
|
|
||||||
(which were promptly fixed). More recently, Ken ported most
|
|
||||||
of the POI project documentation to XML from Andy's crappy
|
|
||||||
HTML docs he wrote with Star Office.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify"> Around the same time as the release, Glen Stampoultzis
|
|
||||||
joined the project. Glen was ticked off at Andy's flippant attitude
|
|
||||||
towards adding graphing to HSSF. Glen got so ticked off he decided to
|
|
||||||
grab a hammer and do it himself. Glen has already become an integral
|
|
||||||
part of the POI development community; his contributions to HSSF have
|
|
||||||
already started making waves.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Somewhere in there we decided to finally submit the project
|
|
||||||
to <a href="http://xml.apache.org/cocoon">The Apache
|
|
||||||
Cocoon Project</a>, only to discover the project had
|
|
||||||
outgrown fitting nicely into just Cocoon long ago.
|
|
||||||
Furthermore, Andy started eyeing other projects he'd like to
|
|
||||||
see POI functionality added to. So it was decided to donate
|
|
||||||
the Serializers and Generators to Cocoon, other POI
|
|
||||||
integration components to other projects, and the POI APIs
|
|
||||||
would become part of Jakarta. It was a bumpy road but it
|
|
||||||
looks like everything turned out since you're reading this!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>What's next for POI</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">First we'll tackle this from a project standpoint: Well, we
|
|
||||||
made an offer to Microsoft and Actuate (tongue in cheek
|
|
||||||
... well mostly) that we'd quit the project and retire if
|
|
||||||
they'd simply write us each a really large check. I've yet to
|
|
||||||
get a phone call or email so I'm assuming they're not going to
|
|
||||||
pay us to go away.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Next, we've got some work to do here at Jakarta to finish
|
|
||||||
integrating POI into the community. Furthermore, we're
|
|
||||||
still transitioning the Serializer to Cocoon.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">HSSF, during the 2.0 cycle, will undergo a few
|
|
||||||
optimizations. We'll also be adding new features like a full
|
|
||||||
implementation of Formulas and custom text formats. We're
|
|
||||||
hoping to be able to generate smaller files by adding
|
|
||||||
write-support for RK, MulRK and MulBlank records. I'm also
|
|
||||||
going to work on a Cocoon 2 Generator. Currently, reading is
|
|
||||||
not very efficient in HSSF. This is mainly because in order to
|
|
||||||
write or modify, one needs to be able to update upstream
|
|
||||||
pointers to downstream data. To do this you have to have
|
|
||||||
everything between in memory. A Generator would allow SAX
|
|
||||||
events to be processed instead. (This will be based on the low
|
|
||||||
level structures). One of the great things about this is that,
|
|
||||||
you'll not only have a more efficient way to read the file,
|
|
||||||
you'll have a great way to use spreadsheets as XML data
|
|
||||||
sources.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">The HSSF Serializer, will further separate into a general
|
|
||||||
framework for creating serializers for other formats and the
|
|
||||||
HSSF Serializer specific implementation. (This is largely
|
|
||||||
already true). We'll also be adding support for features
|
|
||||||
already supported by HSSF (styles, fonts, text formats). We're
|
|
||||||
hoping to add support for formulas during this cycle.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">We're beginning to expand our scope yet again. If we could
|
|
||||||
do all of this for XLS files, what about Doc files or PPT
|
|
||||||
files? We're thinking that our next component (HDF - Horrible
|
|
||||||
Document Format) should follow the same pattern. We're hoping
|
|
||||||
that new blood will join the team and allow us to tackle this
|
|
||||||
even faster (in part because POIFS is already finished). But
|
|
||||||
maybe what we need most is you! </p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,622 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HPSF HOW-TO</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HPSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">How To</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="internals.html">Internals</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="todo.html">To Do</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HPSF HOW-TO</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HPSF HOW-TO</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>How To Use the HPSF APIs</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">This HOW-TO is organized in three section. You should read them
|
|
||||||
sequentially because the later sections build upon the earlier ones.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">The <a href="#sec1">first section</a> explains how to read
|
|
||||||
the most important standard properties of a Microsoft Office
|
|
||||||
document. Standard properties are things like title, author, creation
|
|
||||||
date etc. It is quite likely that you will find here what you need and
|
|
||||||
don't have to read the other sections.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">The <a href="#sec2">second section</a> goes a small step
|
|
||||||
further and focusses on reading additional standard properties. It also
|
|
||||||
talks about exceptions that may be thrown when dealing with HPSF and
|
|
||||||
shows how you can read properties of embedded objects.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">The <a href="#sec3">third section</a> tells how to read
|
|
||||||
non-standard properties. Non-standard properties are application-specific
|
|
||||||
name/value/type triples.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="sec1"></anchor>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Reading Standard Properties</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<note>This section explains how to read
|
|
||||||
the most important standard properties of a Microsoft Office
|
|
||||||
document. Standard properties are things like title, author, creation
|
|
||||||
date etc. Chances are that you will find here what you need and
|
|
||||||
don't have to read the other sections.</note>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The first thing you should understand is that properties are stored in
|
|
||||||
separate documents inside the POI filesystem. (If you don't know what a
|
|
||||||
POI filesystem is, read its <a href="../poifs/index.html">documentation</a>.) A document in a POI
|
|
||||||
filesystem is also called a <em>stream</em>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The following example shows how to read a POI filesystem's
|
|
||||||
"title" property. Reading other properties is similar. Consider the API
|
|
||||||
documentation of <code>org.apache.poi.hpsf.SummaryInformation</code>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The standard properties this section focusses on can be
|
|
||||||
found in a document called <em>\005SummaryInformation</em> in the root of
|
|
||||||
the POI filesystem. The notation <em>\005</em> in the document's name
|
|
||||||
means the character with the decimal value of 5. In order to read the
|
|
||||||
title, an application has to perform the following steps:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Open the document <em>\005SummaryInformation</em> located in the root
|
|
||||||
of the POI filesystem.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Create an instance of the class
|
|
||||||
<code>SummaryInformation</code> from that
|
|
||||||
document.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Call the <code>SummaryInformation</code> instance's
|
|
||||||
<code>getTitle()</code> method.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Sounds easy, doesn't it? Here are the steps in detail.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>Open the document \005SummaryInformation in the root of the POI filesystem</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">An application that wants to open a document in a POI filesystem
|
|
||||||
(POIFS) proceeds as shown by the following code fragment. (The full
|
|
||||||
source code of the sample application is available in the
|
|
||||||
<em>examples</em> section of the POI source tree as
|
|
||||||
<em>ReadTitle.java</em>.)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
import java.io.*;
|
|
||||||
import org.apache.poi.hpsf.*;
|
|
||||||
import org.apache.poi.poifs.eventfilesystem.*;
|
|
||||||
|
|
||||||
// ...
|
|
||||||
|
|
||||||
public static void main(String[] args)
|
|
||||||
throws IOException
|
|
||||||
{
|
|
||||||
final String filename = args[0];
|
|
||||||
POIFSReader r = new POIFSReader();
|
|
||||||
r.registerListener(new MyPOIFSReaderListener(),
|
|
||||||
"\005SummaryInformation");
|
|
||||||
r.read(new FileInputStream(filename));
|
|
||||||
}</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The first interesting statement is</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>POIFSReader r = new POIFSReader();</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">It creates a
|
|
||||||
<code>org.apache.poi.poifs.eventfilesystem.POIFSReader</code> instance
|
|
||||||
which we shall need to read the POI filesystem. Before the application
|
|
||||||
actually opens the POI filesystem we have to tell the
|
|
||||||
<code>POIFSReader</code> which documents we are interested in. In this
|
|
||||||
case the application should do something with the document
|
|
||||||
<em>\005SummaryInformation</em>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
r.registerListener(new MyPOIFSReaderListener(),
|
|
||||||
"\005SummaryInformation");</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">This method call registers a
|
|
||||||
<code>org.apache.poi.poifs.eventfilesystem.POIFSReaderListener</code>
|
|
||||||
with the <code>POIFSReader</code>. The <code>POIFSReaderListener</code>
|
|
||||||
interface specifies the method <code>processPOIFSReaderEvent</code>
|
|
||||||
which processes a document. The class
|
|
||||||
<code>MyPOIFSReaderListener</code> implements the
|
|
||||||
<code>POIFSReaderListener</code> and thus the
|
|
||||||
<code>processPOIFSReaderEvent</code> method. The eventing POI filesystem
|
|
||||||
calls this method when it finds the <em>\005SummaryInformation</em>
|
|
||||||
document. In the sample application <code>MyPOIFSReaderListener</code> is
|
|
||||||
a static class in the <em>ReadTitle.java</em> source file.)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Now everything is prepared and reading the POI filesystem can
|
|
||||||
start:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>r.read(new FileInputStream(filename));</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The following source code fragment shows the
|
|
||||||
<code>MyPOIFSReaderListener</code> class and how it retrieves the
|
|
||||||
title.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
static class MyPOIFSReaderListener implements POIFSReaderListener
|
|
||||||
{
|
|
||||||
public void processPOIFSReaderEvent(POIFSReaderEvent e)
|
|
||||||
{
|
|
||||||
SummaryInformation si = null;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
si = (SummaryInformation)
|
|
||||||
PropertySetFactory.create(e.getStream());
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
throw new RuntimeException
|
|
||||||
("Property set stream \"" +
|
|
||||||
event.getPath() + event.getName() + "\": " + ex);
|
|
||||||
}
|
|
||||||
final String title = si.getTitle();
|
|
||||||
if (title != null)
|
|
||||||
System.out.println("Title: \"" + title + "\"");
|
|
||||||
else
|
|
||||||
System.out.println("Document has no title.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The line</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>SummaryInformation si = null;</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">declares a <code>SummaryInformation</code> variable and initializes it
|
|
||||||
with <code>null</code>. We need an instance of this class to access the
|
|
||||||
title. The instance is created in a <code>try</code> block:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>si = (SummaryInformation)
|
|
||||||
PropertySetFactory.create(e.getStream());</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The expression <code>e.getStream()</code> returns the input stream
|
|
||||||
containing the bytes of the property set stream named
|
|
||||||
<em>\005SummaryInformation</em>. This stream is passed into the
|
|
||||||
<code>create</code> method of the factory class
|
|
||||||
<code>org.apache.poi.hpsf.PropertySetFactory</code> which returns
|
|
||||||
a <code>org.apache.poi.hpsf.PropertySet</code> instance. It is more or
|
|
||||||
less safe to cast this result to <code>SummaryInformation</code>, a
|
|
||||||
convenience class with methods like <code>getTitle()</code>,
|
|
||||||
<code>getAuthor()</code> etc.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The <code>PropertySetFactory.create</code> method may throw all sorts
|
|
||||||
of exceptions. We'll deal with them in the next sections. For now we just
|
|
||||||
catch all exceptions and throw a <code>RuntimeException</code>
|
|
||||||
containing the message text of the origin exception.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">If all goes well, the sample application retrieves the title and prints
|
|
||||||
it to the standard output. As you can see you must be prepared for the
|
|
||||||
case that the POI filesystem does not have a title.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>final String title = si.getTitle();
|
|
||||||
if (title != null)
|
|
||||||
System.out.println("Title: \"" + title + "\"");
|
|
||||||
else
|
|
||||||
System.out.println("Document has no title.");</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Please note that a Microsoft Office document does not necessarily
|
|
||||||
contain the <em>\005SummaryInformation</em> stream. The documents created
|
|
||||||
by the Microsoft Office suite have one, as far as I know. However, an
|
|
||||||
Excel spreadsheet exported from StarOffice 5.2 won't have a
|
|
||||||
<em>\005SummaryInformation</em> stream. In this case the applications
|
|
||||||
won't throw an exception but simply does not call the
|
|
||||||
<code>processPOIFSReaderEvent</code> method. You have been warned!</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="sec2"></anchor>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Additional Standard Properties, Exceptions And Embedded Objects</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<note>This section focusses on reading additional standard properties. It
|
|
||||||
also talks about exceptions that may be thrown when dealing with HPSF and
|
|
||||||
shows how you can read properties of embedded objects.</note>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">A couple of <em>additional standard properties</em> are not
|
|
||||||
contained in the <em>\005SummaryInformation</em> stream explained above,
|
|
||||||
for example a document's category or the number of multimedia clips in a
|
|
||||||
PowerPoint presentation. Microsoft has invented an additional stream named
|
|
||||||
<em>\005DocumentSummaryInformation</em> to hold these properties. With two
|
|
||||||
minor exceptions you can proceed exactly as described above to read the
|
|
||||||
properties stored in <em>\005DocumentSummaryInformation</em>:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p align="justify">Instead of <em>\005SummaryInformation</em> use
|
|
||||||
<em>\005DocumentSummaryInformation</em> as the stream's name.</p>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p align="justify">Replace all occurrences of the class
|
|
||||||
<code>SummaryInformation</code> by
|
|
||||||
<code>DocumentSummaryInformation</code>.</p>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">And of course you cannot call <code>getTitle()</code> because
|
|
||||||
<code>DocumentSummaryInformation</code> has different query methods. See
|
|
||||||
the API documentation for the details!</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">In the previous section the application simply caught all
|
|
||||||
<em>exceptions</em> and was in no way interested in any
|
|
||||||
details. However, a real application will likely want to know what went
|
|
||||||
wrong and act appropriately. Besides any IO exceptions there are three
|
|
||||||
HPSF resp. POI specific exceptions you should know about:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
|
|
||||||
<dt>
|
|
||||||
<code>NoPropertySetStreamException</code>:</dt>
|
|
||||||
|
|
||||||
<dd>
|
|
||||||
<p align="justify">This exception is thrown if the application tries to create a
|
|
||||||
<code>PropertySet</code> or one of its subclasses
|
|
||||||
<code>SummaryInformation</code> and
|
|
||||||
<code>DocumentSummaryInformation</code> from a stream that is not a
|
|
||||||
property set stream. A faulty property set stream counts as not being a
|
|
||||||
property set stream at all. An application should be prepared to deal
|
|
||||||
with this case even if opens streams named
|
|
||||||
<em>\005SummaryInformation</em> or
|
|
||||||
<em>\005DocumentSummaryInformation</em> only. These are just names. A
|
|
||||||
stream's name by itself does not ensure that the stream contains the
|
|
||||||
expected contents and that this contents is correct.</p>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
|
|
||||||
<dt>
|
|
||||||
<code>UnexpectedPropertySetTypeException</code>
|
|
||||||
</dt>
|
|
||||||
|
|
||||||
<dd>
|
|
||||||
<p align="justify">This exception is thrown if a certain type of property set is
|
|
||||||
expected somewhere (e.g. a <code>SummaryInformation</code> or
|
|
||||||
<code>DocumentSummaryInformation</code>) but the provided property
|
|
||||||
set is not of that type.</p>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
|
|
||||||
<dt>
|
|
||||||
<code>MarkUnsupportedException</code>
|
|
||||||
</dt>
|
|
||||||
|
|
||||||
<dd>
|
|
||||||
<p align="justify">This exception is thrown if an input stream that is to be parsed
|
|
||||||
into a property set does not support the
|
|
||||||
<code>InputStream.mark(int)</code> operation. The POI filesystem uses
|
|
||||||
the <code>DocumentInputStream</code> class which does support this
|
|
||||||
operation, so you are safe here. However, if you read a property set
|
|
||||||
stream from another kind of input stream things may be
|
|
||||||
different.</p>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Many Microsoft Office documents contain <em>embedded
|
|
||||||
objects</em>, for example an Excel sheet on a page in a Word
|
|
||||||
document. Embedded objects may have property sets of their own. An
|
|
||||||
application can open these property set streams as described above. The
|
|
||||||
only difference is that they are not located in the POI filesystem's root
|
|
||||||
but in a nested directory instead. Just register a
|
|
||||||
<code>POIFSReaderListener</code> for the property set streams you are
|
|
||||||
interested in. For example, the <em>POIBrowser</em> application in the
|
|
||||||
contrib section tries to open each and every document in a POI filesystem
|
|
||||||
as a property set stream. If this operation was successful it displays the
|
|
||||||
properties.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="sec3"></anchor>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Reading Non-Standard Properties</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<note>This section tells how to read
|
|
||||||
non-standard properties. Non-standard properties are application-specific
|
|
||||||
name/value/type triples.</note>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#c0c0c0"><font size="-1" color="#023264">Write this section!</font></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,143 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HPSF (Horrible Property Set Format)</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HPSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">How To</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="internals.html">Internals</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="todo.html">To Do</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HPSF (Horrible Property Set Format)</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HPSF (Horrible Property Set Format)</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">Microsoft applications like "Word" or "Excel" let the user describe his
|
|
||||||
document by properties like "title", "category" and so on. The application
|
|
||||||
itself adds further information: last author, creation date etc. These
|
|
||||||
properties are stored in so-called <em>property set streams</em>. A
|
|
||||||
property set stream is a separate document within a <a href="../poifs/index.html">POI filesystem</a>. HPSF is POI's pure-Java
|
|
||||||
implementation to read (and in future to write) property set streams.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The <a href="how-to.html">HPSF HOWTO</a> describes what a Java
|
|
||||||
application should do to read a property set using HPSF and to retrieve the
|
|
||||||
information it needs.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">HPSF supports OLE2 property set streams in general, not only the special
|
|
||||||
case of document properties mentioned above. The <a href="internals.html">HPSF description</a> describes the internal
|
|
||||||
structure of property set streams.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,173 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>To Do</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HPSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">How To</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="internals.html">Internals</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="todo.html">To Do</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>To Do</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">To Do</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>To Do</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The following functionalities should be added to HPFS:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Complete writing the HPSF documentation.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Add writing capability for property sets.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Add codepage support.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Add Unicode support.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Add resource bundles to
|
|
||||||
<code>org.apache.poi.hpsf.wellknown</code> to ease
|
|
||||||
localizations.</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<p align="justify">Implement reading functionality for those property types that are not
|
|
||||||
yet supported (other than byte arrays).</p>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,230 +0,0 @@
|
||||||
<html xmlns:NetUtils="org.apache.cocoon.util.NetUtils">
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<link href="ns4_toxins.css" type="text/css" rel="stylesheet">
|
|
||||||
<link href="main.css" type="text/css" rel="stylesheet">
|
|
||||||
<link media="print" href="print.css" type="text/css" rel="stylesheet">
|
|
||||||
<link href="compact.css" type="text/css" title="compact" rel="alternate stylesheet">
|
|
||||||
</head>
|
|
||||||
<body marginheight="0" marginwidth="0">
|
|
||||||
<div id="banner">
|
|
||||||
<table width="100%" cellpadding="8" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td><a href="http://www.apache.org/"><img hspace="0" vspace="0" border="0" src="common/images/group-logo.gif"></a></td><td>
|
|
||||||
<div align="right">
|
|
||||||
<a href="http://www.apache.org/"><img hspace="0" vspace="0" border="0" src="common/images/project-logo.gif"></a>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div class="modbar">
|
|
||||||
<small><strong><a href="http://www.apache.org/">www.apache.org</a> >
|
|
||||||
<a href="http://www.apache.org/">jakarta.apache.org</a> >
|
|
||||||
<a href="#"></a></strong></small>
|
|
||||||
</div>
|
|
||||||
<table id="main" width="98%" cellpadding="8" cellspacing="0" border="0">
|
|
||||||
<tr valign="top">
|
|
||||||
<td width="20%" id="leftcol">
|
|
||||||
<div id="navcolumn">
|
|
||||||
<div>
|
|
||||||
<small><a href="../index.html">Main</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><strong>HSSF</strong></small>
|
|
||||||
<div>
|
|
||||||
<small><a href="quick-guide.html">Quick Guide</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="how-to.html">HOWTO</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="use-case.html">Use Case</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="diagrams.html">Pictorial Docs</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="alternatives.html">Alternatives</a></small>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><strong>Contributer's Guide</strong></small>
|
|
||||||
<div>
|
|
||||||
<small><a href="record-generator.html">Record Generator</a></small>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="helptext">
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<th>How do I...?</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<div>Learn more about this project? </div>
|
|
||||||
<div>Print this page...</div>
|
|
||||||
<div>Troubleshoot...</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</td><td id="bodycol" width="100%">
|
|
||||||
<div id="topmodule">
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">
|
|
||||||
<form method="get" action="http://www.google.com/search" onsubmit="q.value = query.value + ' site:jakarta.apache.org'">
|
|
||||||
<input type="hidden" name="q"><input maxlength="255" size="35" name="id" id="query" type="text">
|
|
||||||
<input type="button" value="Search" name="Search">
|
|
||||||
<img border="0" alt="" height="15" width="2" src="images/seperator2.gif">
|
|
||||||
<input type="radio" name="web" value="web">web site <input type="radio" name="mail" value="mail">mail lists
|
|
||||||
</form>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<h2>HSSF</h2>
|
|
||||||
<font color="#525D76"><i>Alternatives to HSSF</i></font>
|
|
||||||
<br>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#003063"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Alternatives</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Maybe it's unwise to advertise your competitors but we believe
|
|
||||||
competition is good and we have the best support reading and
|
|
||||||
write Excel workbooks currently available.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0">
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td><b>Product</b></td>
|
|
||||||
<td><b>URL</b></td>
|
|
||||||
<td><b>Description</b></td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>Formula One</td>
|
|
||||||
<td>
|
|
||||||
<a href="http://www.tidestone.com/">www.tidestone.com</a>
|
|
||||||
</td>
|
|
||||||
<td>An alternative to this project is to
|
|
||||||
buy the $10,000 Formula 1 library
|
|
||||||
and accept its crude api and limitations.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>Visual Basic</td>
|
|
||||||
<td>
|
|
||||||
<a href="http://www.microsoft.com/">www.microsoft.com</a>
|
|
||||||
</td>
|
|
||||||
<td>Give up XML and write Visual Basic code on a Microsoft Windows based
|
|
||||||
Environment or output in Microsoft's beta and primarily undocumented
|
|
||||||
XML for office format.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>JExcel</td>
|
|
||||||
<td>http://stareyes.homeip.net:8888</td>
|
|
||||||
<td>Frequently unavailable. Little currently known about it's capabilities.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>JWorkbook</td>
|
|
||||||
<td>http://www.object-refinery.com/jworkbook/index.html</td>
|
|
||||||
<td>This effort supports Gnumeric and Excel, however the Excel part is done using POI anyway.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>xlReader</td>
|
|
||||||
<td><a href="http://www.sourceforge.net/projects/xlrd">http://www.sourceforge.net/projects/xlrd</a></td>
|
|
||||||
<td>Provides decent support for reading Excel.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>Excel ODBC Driver</td>
|
|
||||||
<td><a href="http://www.nwlink.com/~leewal/content/exceljavasample.htm">http://www.nwlink.com/~leewal/content/exceljavasample.htm</a></td>
|
|
||||||
<td>ODBC offers a somewhat wierd method for using Excel.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>ExtenXLS</td>
|
|
||||||
<td><a href="http://www.extentech.com/products/ExtenXLS/docs/intro3.jsp">http://www.extentech.com/products/ExtenXLS/docs/intro3.jsp</a></td>
|
|
||||||
<td>Commercial library for reading, modifying and writing Excel spreadsheets. Not cheap but
|
|
||||||
certainly a lot more affordable than Formula 1. No idea as to it's quality.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>J-Integra Java-Excel Bridge</td>
|
|
||||||
<td><a href="http://www.intrinsyc.com/products/bridging/jintegra.asp">http://www.intrinsyc.com/products/bridging/jintegra.asp</a></td>
|
|
||||||
<td>Uses DCOM to an Excel instance on a windows machine.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td>Perl & C</td>
|
|
||||||
<td>-</td>
|
|
||||||
<td>There are a number of perl and C libraries, however none of them are consistent.</td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</table>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<div id="footer">
|
|
||||||
<table cellpadding="4" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td><a href="http://www.apache.org/">Copyright © 1999-2002 The Apache Software Foundation. All Rights Reserved.</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a><a href="http://jakarta.apache.org/ant/"><img alt="Ant Logo" src="images/ant_logo_medium.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,134 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HSSF</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Usermodel Class Diagram by Matthew Young</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<img src="images/usermodel.gif">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,159 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HSSF</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
This section is intended for diagrams (UML/etc) that help
|
|
||||||
explain HSSF.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="diagram1.html">HSSF usermodel class diagram</a> -
|
|
||||||
by Matthew Young (myoung at westernasset dot com)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Have more? Add a new "bug" to the bug database with [DOCUMENTATION]
|
|
||||||
prefacing the description and a link to the file on an http server
|
|
||||||
somewhere. If you don't have your own webserver, then you can email it
|
|
||||||
to (acoliver at apache dot org) provided its < 5MB. Diagrams should be
|
|
||||||
in some format that can be read at least on Linux and Windows. Diagrams
|
|
||||||
that can be edited are preferrable, but lets face it, there aren't too
|
|
||||||
many good affordable UML tools yet! And no they don't HAVE to be UML...
|
|
||||||
just useful.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,870 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>The New Halloween Document</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>The New Halloween Document</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">The New Halloween Document</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>How to use the HSSF prototype API</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Capabilities</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">This release of the how-to outlines functionality for 1.5.
|
|
||||||
Those looking for information on the release edition should
|
|
||||||
look in the poi-src for the release or at a
|
|
||||||
previous edition in CVS tagged for that release.</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
This release allows numeric and string cell values to be written to
|
|
||||||
or read from an XLS file as well as reading and writing dates. Also
|
|
||||||
in this release is row and column sizing, cell styling (bold,
|
|
||||||
italics, borders,etc), and support for built-in data formats. New
|
|
||||||
to this release is an event-based API for reading XLS files.
|
|
||||||
It differs greatly from the read/write API
|
|
||||||
and is intended for intermediate developers who need a smaller
|
|
||||||
memory footprint. It will also serve as the basis for the HSSF
|
|
||||||
Generator.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Target Audience</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">This release is intended for developers, java-fanatics and the
|
|
||||||
just generally all around impatient. HSSF has not yet been
|
|
||||||
extensively tested in a high load multi-threaded situation. This
|
|
||||||
release is not considered to be "golden" as it has new
|
|
||||||
features that have not been extensively tested, and is an early 2.0
|
|
||||||
build that could be restructured significantly in the future (not
|
|
||||||
that there are necessarily plans to do so, just that you're better
|
|
||||||
off basing your code on 1.0 and sticking with it if you don't need
|
|
||||||
2.0 stuff bad enough to deal with us pulling the rug out from under
|
|
||||||
you regularly).</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>General Use</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>User API</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="97%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-2"><font face="Arial,sans-serif"><b>Writing a new one</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The high level API (package: org.apache.poi.hssf.usermodel)
|
|
||||||
is what most people should use. Usage is very simple.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Workbooks are created by creating an instance of
|
|
||||||
org.apache.poi.hssf.usermodel.HSSFWorkbook.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Sheets are created by calling createSheet() from an existing
|
|
||||||
instance of HSSFWorkbook, the created sheet is automatically added in
|
|
||||||
sequence to the workbook. Sheets do not in themselves have a sheet
|
|
||||||
name (the tab at the bottom); you set
|
|
||||||
the name associated with a sheet by calling
|
|
||||||
HSSFWorkbook.setSheetName(sheetindex,"SheetName").</p>
|
|
||||||
|
|
||||||
<p align="justify">Rows are created by calling createRow(rowNumber) from an existing
|
|
||||||
instance of HSSFSheet. Only rows that have cell values should be
|
|
||||||
added to the sheet. To set the row's height, you just call
|
|
||||||
setRowHeight(height) on the row object. The height must be given in
|
|
||||||
twips, or 1/20th of a point. If you prefer, there is also a
|
|
||||||
setRowHeightInPoints method.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Cells are created by calling createCell(column, type) from an
|
|
||||||
existing HSSFRow. Only cells that have values should be added to the
|
|
||||||
row. Cells should have their cell type set to either
|
|
||||||
HSSFCell.CELL_TYPE_NUMERIC or HSSFCell.CELL_TYPE_STRING depending on
|
|
||||||
whether they contain a numeric or textual value. Cells must also have
|
|
||||||
a value set. Set the value by calling setCellValue with either a
|
|
||||||
String or double as a parameter. Individual cells do not have a
|
|
||||||
width; you must call setColumnWidth(colindex, width) (use units of
|
|
||||||
1/256th of a character) on the HSSFSheet object. (You can't do it on
|
|
||||||
an individual basis in the GUI either).</p>
|
|
||||||
|
|
||||||
<p align="justify">Cells are styled with HSSFCellStyle objects which in turn contain
|
|
||||||
a reference to an HSSFFont object. These are created via the
|
|
||||||
HSSFWorkbook object by calling createCellStyle() and createFont().
|
|
||||||
Once you create the object you must set its parameters (colors,
|
|
||||||
borders, etc). To set a font for an HSSFCellStyle call
|
|
||||||
setFont(fontobj).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Once you have generated your workbook, you can write it out by
|
|
||||||
calling write(outputStream) from your instance of Workbook, passing
|
|
||||||
it an OutputStream (for instance, a FileOutputStream or
|
|
||||||
ServletOutputStream). You must close the OutputStream yourself. HSSF
|
|
||||||
does not close it for you.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Here is some example code (excerpted and adapted from
|
|
||||||
org.apache.poi.hssf.dev.HSSF test class):</p>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre> short rownum;
|
|
||||||
|
|
||||||
// create a new file
|
|
||||||
FileOutputStream out = new FileOutputStream("workbook.xls");
|
|
||||||
// create a new workbook
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
// create a new sheet
|
|
||||||
HSSFSheet s = wb.createSheet();
|
|
||||||
// declare a row object reference
|
|
||||||
HSSFRow r = null;
|
|
||||||
// declare a cell object reference
|
|
||||||
HSSFCell c = null;
|
|
||||||
// create 3 cell styles
|
|
||||||
HSSFCellStyle cs = wb.createCellStyle();
|
|
||||||
HSSFCellStyle cs2 = wb.createCellStyle();
|
|
||||||
HSSFCellStyle cs3 = wb.createCellStyle();
|
|
||||||
// create 2 fonts objects
|
|
||||||
HSSFFont f = wb.createFont();
|
|
||||||
HSSFFont f2 = wb.createFont();
|
|
||||||
|
|
||||||
//set font 1 to 12 point type
|
|
||||||
f.setFontHeightInPoints((short) 12);
|
|
||||||
//make it red
|
|
||||||
f.setColor((short) HSSFCellStyle.RED);
|
|
||||||
// make it bold
|
|
||||||
//arial is the default font
|
|
||||||
f.setBoldweight(f.BOLDWEIGHT_BOLD);
|
|
||||||
|
|
||||||
//set font 2 to 10 point type
|
|
||||||
f2.setFontHeightInPoints((short) 10);
|
|
||||||
//make it the color at palette index 0xf (white)
|
|
||||||
f2.setColor((short) HSSFCellStyle.WHITE);
|
|
||||||
//make it bold
|
|
||||||
f2.setBoldweight(f2.BOLDWEIGHT_BOLD);
|
|
||||||
|
|
||||||
//set cell stlye
|
|
||||||
cs.setFont(f);
|
|
||||||
//set the cell format see HSSFDataFromat for a full list
|
|
||||||
cs.setDataFormat(HSSFDataFormat.getFormat("($#,##0_);[Red]($#,##0)"));
|
|
||||||
|
|
||||||
//set a thin border
|
|
||||||
cs2.setBorderBottom(cs2.BORDER_THIN);
|
|
||||||
//fill w fg fill color
|
|
||||||
cs2.setFillPattern((short) HSSFCellStyle.SOLID_FOREGROUND);
|
|
||||||
// set foreground fill to red
|
|
||||||
cs2.setFillForegroundColor((short) HSSFCellStyle.RED);
|
|
||||||
|
|
||||||
// set the font
|
|
||||||
cs2.setFont(f2);
|
|
||||||
|
|
||||||
// set the sheet name to HSSF Test
|
|
||||||
wb.setSheetName(0, "HSSF Test");
|
|
||||||
// create a sheet with 300 rows (0-299)
|
|
||||||
for (rownum = (short) 0; rownum < 300; rownum++)
|
|
||||||
{
|
|
||||||
// create a row
|
|
||||||
r = s.createRow(rownum);
|
|
||||||
// on every other row
|
|
||||||
if ((rownum % 2) == 0)
|
|
||||||
{
|
|
||||||
// make the row height bigger (in twips - 1/20 of a point)
|
|
||||||
r.setHeight((short) 0x249);
|
|
||||||
}
|
|
||||||
|
|
||||||
//r.setRowNum(( short ) rownum);
|
|
||||||
// create 50 cells (0-49) (the += 2 becomes apparent later
|
|
||||||
for (short cellnum = (short) 0; cellnum < 50; cellnum += 2)
|
|
||||||
{
|
|
||||||
// create a numeric cell
|
|
||||||
c = r.createCell(cellnum);
|
|
||||||
// do some goofy math to demonstrate decimals
|
|
||||||
c.setCellValue(rownum * 10000 + cellnum
|
|
||||||
+ (((double) rownum / 1000)
|
|
||||||
+ ((double) cellnum / 10000)));
|
|
||||||
|
|
||||||
// on every other row
|
|
||||||
if ((rownum % 2) == 0)
|
|
||||||
{
|
|
||||||
// set this cell to the first cell style we defined
|
|
||||||
c.setCellStyle(cs);
|
|
||||||
}
|
|
||||||
|
|
||||||
// create a string cell (see why += 2 in the
|
|
||||||
c = r.createCell((short) (cellnum + 1));
|
|
||||||
|
|
||||||
// set the cell's string value to "TEST"
|
|
||||||
c.setCellValue("TEST");
|
|
||||||
// make this column a bit wider
|
|
||||||
s.setColumnWidth((short) (cellnum + 1), (short) ((50 * 8) / ((double) 1 / 20)));
|
|
||||||
|
|
||||||
// on every other row
|
|
||||||
if ((rownum % 2) == 0)
|
|
||||||
{
|
|
||||||
// set this to the white on red cell style
|
|
||||||
// we defined above
|
|
||||||
c.setCellStyle(cs2);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//draw a thick black border on the row at the bottom using BLANKS
|
|
||||||
// advance 2 rows
|
|
||||||
rownum++;
|
|
||||||
rownum++;
|
|
||||||
|
|
||||||
r = s.createRow(rownum);
|
|
||||||
|
|
||||||
// define the third style to be the default
|
|
||||||
// except with a thick black border at the bottom
|
|
||||||
cs3.setBorderBottom(cs3.BORDER_THICK);
|
|
||||||
|
|
||||||
//create 50 cells
|
|
||||||
for (short cellnum = (short) 0; cellnum < 50; cellnum++)
|
|
||||||
{
|
|
||||||
//create a blank type cell (no value)
|
|
||||||
c = r.createCell(cellnum);
|
|
||||||
// set it to the thick black border style
|
|
||||||
c.setCellStyle(cs3);
|
|
||||||
}
|
|
||||||
|
|
||||||
//end draw thick black border
|
|
||||||
|
|
||||||
|
|
||||||
// demonstrate adding/naming and deleting a sheet
|
|
||||||
// create a sheet, set its title then delete it
|
|
||||||
s = wb.createSheet();
|
|
||||||
wb.setSheetName(1, "DeletedSheet");
|
|
||||||
wb.removeSheetAt(1);
|
|
||||||
//end deleted sheet
|
|
||||||
|
|
||||||
// write the workbook to the output stream
|
|
||||||
// close our file (don't blow out our file handles
|
|
||||||
wb.write(out);
|
|
||||||
out.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="97%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-2"><font face="Arial,sans-serif"><b>Reading or modifying an existing file</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Reading in a file is equally simple. To read in a file, create a
|
|
||||||
new instance of org.apache.poi.poifs.Filesystem, passing in an open InputStream, such as a FileInputStream
|
|
||||||
for your XLS, to the constructor. Construct a new instance of
|
|
||||||
org.apache.poi.hssf.usermodel.HSSFWorkbook passing the
|
|
||||||
Filesystem instance to the constructor. From there you have access to
|
|
||||||
all of the high level model objects through their assessor methods
|
|
||||||
(workbook.getSheet(sheetNum), sheet.getRow(rownum), etc).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Modifying the file you have read in is simple. You retrieve the
|
|
||||||
object via an assessor method, remove it via a parent object's remove
|
|
||||||
method (sheet.removeRow(hssfrow)) and create objects just as you
|
|
||||||
would if creating a new xls. When you are done modifying cells just
|
|
||||||
call workbook.write(outputstream) just as you did above.</p>
|
|
||||||
|
|
||||||
<p align="justify">An example of this can be seen in
|
|
||||||
<a href="http://cvs.apache.org/viewcvs/~checkout~/jakarta-poi/src/java/org/apache/poi/hssf/dev/HSSF.java?rev=1.1">org.apache.poi.hssf.dev.HSSF</a>.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>Event API</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The event API is brand new. It is intended for intermediate
|
|
||||||
developers who are willing to learn a little bit of the low level API
|
|
||||||
structures. Its relatively simple to use, but requires a basic
|
|
||||||
understanding of the parts of an Excel file (or willingness to
|
|
||||||
learn). The advantage provided is that you can read an XLS with a
|
|
||||||
relatively small memory footprint.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">To use this API you construct an instance of
|
|
||||||
org.apache.poi.hssf.eventmodel.HSSFRequest. Register a class you
|
|
||||||
create that supports the
|
|
||||||
org.apache.poi.hssf.eventmodel.HSSFListener interface using the
|
|
||||||
HSSFRequest.addListener(yourlistener, recordsid). The recordsid
|
|
||||||
should be a static reference number (such as BOFRecord.sid) contained
|
|
||||||
in the classes in org.apache.poi.hssf.record. The trick is you
|
|
||||||
have to know what these records are. Alternatively you can call
|
|
||||||
HSSFRequest.addListenerForAllRecords(mylistener). In order to learn
|
|
||||||
about these records you can either read all of the javadoc in the
|
|
||||||
org.apache.poi.hssf.record package or you can just hack up a
|
|
||||||
copy of org.apache.poi.hssf.dev.EFHSSF and adapt it to your
|
|
||||||
needs. TODO: better documentation on records.</p>
|
|
||||||
|
|
||||||
<p align="justify">Once you've registered your listeners in the HSSFRequest object
|
|
||||||
you can construct an instance of
|
|
||||||
org.apache.poi.poifs.filesystem.FileSystem (see POIFS howto) and
|
|
||||||
pass it your XLS file inputstream. You can either pass this, along
|
|
||||||
with the request you constructed, to an instance of HSSFEventFactory
|
|
||||||
via the HSSFEventFactory.processWorkbookEvents(request, Filesystem)
|
|
||||||
method, or you can get an instance of DocumentInputStream from
|
|
||||||
Filesystem.createDocumentInputStream("Workbook") and pass
|
|
||||||
it to HSSFEventFactory.processEvents(request, inputStream). Once you
|
|
||||||
make this call, the listeners that you constructed receive calls to
|
|
||||||
their processRecord(Record) methods with each Record they are
|
|
||||||
registered to listen for until the file has been completely read.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">A code excerpt from org.apache.poi.hssf.dev.EFHSSF (which is
|
|
||||||
in CVS or the source distribution) is reprinted below with excessive
|
|
||||||
comments:</p>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
/**
|
|
||||||
* This example shows how to use the event API for reading a file.
|
|
||||||
*/
|
|
||||||
public class EventExample
|
|
||||||
implements HSSFListener
|
|
||||||
{
|
|
||||||
private SSTRecord sstrec;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This method listens for incoming records and handles them as required.
|
|
||||||
* @param record The record that was found while reading.
|
|
||||||
*/
|
|
||||||
public void processRecord(Record record)
|
|
||||||
{
|
|
||||||
switch (record.getSid())
|
|
||||||
{
|
|
||||||
// the BOFRecord can represent either the beginning of a sheet or the workbook
|
|
||||||
case BOFRecord.sid:
|
|
||||||
BOFRecord bof = (BOFRecord) record;
|
|
||||||
if (bof.getType() == bof.TYPE_WORKBOOK)
|
|
||||||
{
|
|
||||||
System.out.println("Encountered workbook");
|
|
||||||
// assigned to the class level member
|
|
||||||
} else if (bof.getType() == bof.TYPE_WORKSHEET)
|
|
||||||
{
|
|
||||||
System.out.println("Encountered sheet reference");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BoundSheetRecord.sid:
|
|
||||||
BoundSheetRecord bsr = (BoundSheetRecord) record;
|
|
||||||
System.out.println("New sheet named: " + bsr.getSheetname());
|
|
||||||
break;
|
|
||||||
case RowRecord.sid:
|
|
||||||
RowRecord rowrec = (RowRecord) record;
|
|
||||||
System.out.println("Row found, first column at "
|
|
||||||
+ rowrec.getFirstCol() + " last column at " + rowrec.getLastCol());
|
|
||||||
break;
|
|
||||||
case NumberRecord.sid:
|
|
||||||
NumberRecord numrec = (NumberRecord) record;
|
|
||||||
System.out.println("Cell found with value " + numrec.getValue()
|
|
||||||
+ " at row " + numrec.getRow() + " and column " + numrec.getColumn());
|
|
||||||
break;
|
|
||||||
// SSTRecords store a array of unique strings used in Excel.
|
|
||||||
case SSTRecord.sid:
|
|
||||||
sstrec = (SSTRecord) record;
|
|
||||||
for (int k = 0; k < sstrec.getNumUniqueStrings(); k++)
|
|
||||||
{
|
|
||||||
System.out.println("String table value " + k + " = " + sstrec.getString(k));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case LabelSSTRecord.sid:
|
|
||||||
LabelSSTRecord lrec = (LabelSSTRecord) record;
|
|
||||||
System.out.println("String cell found with value "
|
|
||||||
+ sstrec.getString(lrec.getSSTIndex()));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read an excel file and spit out what we find.
|
|
||||||
*
|
|
||||||
* @param args Expect one argument that is the file to read.
|
|
||||||
* @throws IOException When there is an error processing the file.
|
|
||||||
*/
|
|
||||||
public static void main(String[] args) throws IOException
|
|
||||||
{
|
|
||||||
// create a new file input stream with the input file specified
|
|
||||||
// at the command line
|
|
||||||
FileInputStream fin = new FileInputStream(args[0]);
|
|
||||||
// create a new org.apache.poi.poifs.filesystem.Filesystem
|
|
||||||
POIFSFileSystem poifs = new POIFSFileSystem(fin);
|
|
||||||
// get the Workbook (excel part) stream in a InputStream
|
|
||||||
InputStream din = poifs.createDocumentInputStream("Workbook");
|
|
||||||
// construct out HSSFRequest object
|
|
||||||
HSSFRequest req = new HSSFRequest();
|
|
||||||
// lazy listen for ALL records with the listener shown above
|
|
||||||
req.addListenerForAllRecords(new EventExample());
|
|
||||||
// create our event factory
|
|
||||||
HSSFEventFactory factory = new HSSFEventFactory();
|
|
||||||
// process our events based on the document input stream
|
|
||||||
factory.processEvents(req, din);
|
|
||||||
// once all the events are processed close our file input stream
|
|
||||||
fin.close();
|
|
||||||
// and our document input stream (don't want to leak these!)
|
|
||||||
din.close();
|
|
||||||
System.out.println("done.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>Low Level APIs</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The low level API is not much to look at. It consists of lots of
|
|
||||||
"Records" in the org.apache.poi.hssf.record.* package,
|
|
||||||
and set of helper classes in org.apache.poi.hssf.model.*. The
|
|
||||||
record classes are consistent with the low level binary structures
|
|
||||||
inside a BIFF8 file (which is embedded in a POIFS file system). You
|
|
||||||
probably need the book: "Microsoft Excel 97 Developer's Kit"
|
|
||||||
from Microsoft Press in order to understand how these fit together
|
|
||||||
(out of print but easily obtainable from Amazon's used books). In
|
|
||||||
order to gain a good understanding of how to use the low level APIs
|
|
||||||
should view the source in org.apache.poi.hssf.usermodel.* and
|
|
||||||
the classes in org.apache.poi.hssf.model.*. You should read the
|
|
||||||
documentation for the POIFS libraries as well.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>HSSF Class/Test Application</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The HSSF application is nothing more than a test for the high
|
|
||||||
level API (and indirectly the low level support). The main body of
|
|
||||||
its code is repeated above. To run it:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>download the poi-alpha build and untar it (tar xvzf
|
|
||||||
tarball.tar.gz)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>set up your classpath as follows:
|
|
||||||
<code>export HSSFDIR={wherever you put HSSF's jar files}
|
|
||||||
export LOG4JDIR={wherever you put LOG4J's jar files}
|
|
||||||
export CLASSPATH=$CLASSPATH:$HSSFDIR/hssf.jar:$HSSFDIR/poi-poifs.jar:$HSSFDIR/poi-util.jar:$LOG4JDIR/jog4j.jar</code>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
<li>type:
|
|
||||||
<code>java org.apache.poi.hssf.dev.HSSF ~/myxls.xls write</code>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify"></p>
|
|
||||||
|
|
||||||
<p align="justify">This should generate a test sheet in your home directory called <code>"myxls.xls"</code>. </p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Type:
|
|
||||||
<code>java org.apache.poi.hssf.dev.HSSF ~/input.xls output.xls</code>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
This is the read/write/modify test. It reads in the spreadsheet, modifies a cell, and writes it back out.
|
|
||||||
Failing this test is not necessarily a bad thing. If HSSF tries to modify a non-existant sheet then this will
|
|
||||||
most likely fail. No big deal. </p>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>HSSF Logging facility</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">HSSF now has a logging facility (using
|
|
||||||
<a href="http://jakarta.apache.org/commons/logging.html">commons logging</a>)
|
|
||||||
that will record massive amounts of debugging information. Its mostly
|
|
||||||
useful to us hssf-developing geeks, but might be useful in tracking
|
|
||||||
down problems.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">So Why use commons logging rather than log4j? Well the following discussion from
|
|
||||||
the jakarta-general mailing list sums it up pretty well. (Thanks Morgan)
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Here's the problem, as I see it.</em>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Suppose Commons component A decides to adopt Log4J, Commons component B
|
|
||||||
decides to adopt LogKit, and Commons component C adopts JDK1.4 logging.
|
|
||||||
They will all minimally function with the right jars in the classpath.
|
|
||||||
However you (the end-user) are left with maintaining configuration for 3
|
|
||||||
different logging APIs, which is tedious at best. When you take into
|
|
||||||
account cool features like variable log levels, Log4J appenders and the
|
|
||||||
like, you're pretty much guaranteed to swallow up useful configuration
|
|
||||||
options because sophisticated configurations are too difficult to maintain
|
|
||||||
over mutiple logging implementations.</em>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<em>Contrarily, if all three Commons components use a logging facade, you can
|
|
||||||
focus all your configuration efforts on one logging implementation. Sure,
|
|
||||||
there is a trade-off; you don't have access to all the features, and the
|
|
||||||
interface between the facade and the implementation must be maintained. But
|
|
||||||
the benefits are not just political; they potentially make the end-users
|
|
||||||
configuration much easier.</em>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Even if all Commons components used the same logging implementation (Log4J
|
|
||||||
for example), other projects in Jakarta-land may choose otherwise. If you
|
|
||||||
add enough Jakarta projects to your environment, you eventually end up with
|
|
||||||
the scenario described above. It's a worthwhile effort to attempt a logging
|
|
||||||
solution that plays well with the Jakarta community at large. I think in
|
|
||||||
many cases the Commons Logging component can fill that role.</em>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Refer to the commons logging package level javadoc for more information concerning how to
|
|
||||||
<a href="http://jakarta.apache.org/commons/logging/api/index.html">configure commons logging.</a>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>HSSF Developer's tools</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">HSSF has a number of tools useful for developers to debug/develop
|
|
||||||
stuff using HSSF (and more generally XLS files). We've already
|
|
||||||
discussed the app for testing HSSF read/write/modify capabilities;
|
|
||||||
now we'll talk a bit about BiffViewer. Early on in the development of
|
|
||||||
HSSF, it was decided that knowing what was in a record, what was
|
|
||||||
wrong with it, etc. was virtually impossible with the available
|
|
||||||
tools. So we developed BiffViewer. You can find it at
|
|
||||||
org.apache.poi.hssf.dev.BiffViewer. It performs two basic
|
|
||||||
functions and a derivative.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">The first is "biffview". To do this you run it (assumes
|
|
||||||
you have everything setup in your classpath and that you know what
|
|
||||||
you're doing enough to be thinking about this) with an xls file as a
|
|
||||||
parameter. It will give you a listing of all understood records with
|
|
||||||
their data and a list of not-yet-understood records with no data
|
|
||||||
(because it doesn't know how to interpret them). This listing is
|
|
||||||
useful for several things. First, you can look at the values and SEE
|
|
||||||
what is wrong in quasi-English. Second, you can send the output to a
|
|
||||||
file and compare it.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">The second function is "big freakin dump", just pass a
|
|
||||||
file and a second argument matching "bfd" exactly. This
|
|
||||||
will just make a big hexdump of the file.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">Lastly, there is "mixed" mode which does the same as
|
|
||||||
regular biffview, only it includes hex dumps of certain records
|
|
||||||
intertwined. To use that just pass a file with a second argument
|
|
||||||
matching "on" exactly.</p>
|
|
||||||
|
|
||||||
<p align="justify">In the next release cycle we'll also have something called a
|
|
||||||
FormulaViewer. The class is already there, but its not very useful
|
|
||||||
yet. When it does something, we'll document it.</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="98%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="-1"><font face="Arial,sans-serif"><b>What's Next?</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">This release contains code that supports "internationalization"
|
|
||||||
or more accurately non-US/UK languages; however, it has not been
|
|
||||||
tested with the new API changes (please help us with this). We've
|
|
||||||
shifted focus a bit for this release in recognition of the
|
|
||||||
international support we've gotten. We're going to focus on western
|
|
||||||
European languages for our first beta. We're more than happy to
|
|
||||||
accept help in supporting non-Western European languages if someone
|
|
||||||
who knows what they're doing in this area is willing to pitch in!
|
|
||||||
(There is next to no documentation on what is necessary to support
|
|
||||||
such a move and its really hard to support a language when you don't even
|
|
||||||
know the alphabet).</p>
|
|
||||||
|
|
||||||
<p align="justify">This release of HSSF does not yet support Formulas. I've been
|
|
||||||
focusing on the requests I've gotten in. That being said, if we get
|
|
||||||
more user feedback on what is most useful first we'll aim for that.
|
|
||||||
As a general principal, HSSF's goal is to support HSSF-Serializer
|
|
||||||
(meaning an emphasis on write). We would like to hear from you! How
|
|
||||||
are you using HSSF/POIFS? How would you like to use it? What features
|
|
||||||
are most important first?
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 74 KiB |
|
@ -1,172 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HSSF</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HSSF</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">HSSF is the POI Project's pure Java implementation of the Excel '97(-2002) file format.</p>
|
|
||||||
|
|
||||||
<p align="justify">HSSF provides a way to read spreadsheets create, modify, read and write XLS spreadsheets
|
|
||||||
It provides:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>low level structures for those with special needs</li>
|
|
||||||
|
|
||||||
<li>an eventmodel api for efficient read-only access</li>
|
|
||||||
|
|
||||||
<li>a full usermodel api for creating, reading and modifying XLS files</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Truth be told there is probably a better way to generate your spreadsheet
|
|
||||||
generation (yet you'll still be using HSSF indirectly). At the time of
|
|
||||||
this writing we're in the process of moving the HSSF Serializer over to
|
|
||||||
the <a href="http://xml.apache.org/cocoon">Apache Cocoon
|
|
||||||
Project</a>. With Cocoon you can serialize any XML datasource (of
|
|
||||||
which might be a ESQL page outputting in SQL for instance) by simply
|
|
||||||
applying the stylesheet and designating the serializer.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
If you're merely reading spreadsheet data, then use the eventmodel api
|
|
||||||
in the org.apache.poi.hssf.eventmodel package.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
If you're modifying spreadsheet data then use the usermodel api. You
|
|
||||||
can also generate spreadsheets this way, but using Cocoon (which will do
|
|
||||||
it this way indirectly) is the best way...we promise.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,597 +0,0 @@
|
||||||
<html xmlns:NetUtils="org.apache.cocoon.util.NetUtils">
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<link href="ns4_toxins.css" type="text/css" rel="stylesheet">
|
|
||||||
<link href="main.css" type="text/css" rel="stylesheet">
|
|
||||||
<link media="print" href="print.css" type="text/css" rel="stylesheet">
|
|
||||||
<link href="compact.css" type="text/css" title="compact" rel="alternate stylesheet">
|
|
||||||
</head>
|
|
||||||
<body marginheight="0" marginwidth="0">
|
|
||||||
<div id="banner">
|
|
||||||
<table width="100%" cellpadding="8" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td><a href="http://www.apache.org/"><img hspace="0" vspace="0" border="0" src="common/images/group-logo.gif"></a></td><td>
|
|
||||||
<div align="right">
|
|
||||||
<a href="http://www.apache.org/"><img hspace="0" vspace="0" border="0" src="common/images/project-logo.gif"></a>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div class="modbar">
|
|
||||||
<small><strong><a href="http://www.apache.org/">www.apache.org</a> >
|
|
||||||
<a href="http://www.apache.org/">jakarta.apache.org</a> >
|
|
||||||
<a href="#"></a></strong></small>
|
|
||||||
</div>
|
|
||||||
<table id="main" width="98%" cellpadding="8" cellspacing="0" border="0">
|
|
||||||
<tr valign="top">
|
|
||||||
<td width="20%" id="leftcol">
|
|
||||||
<div id="navcolumn">
|
|
||||||
<div>
|
|
||||||
<small><a href="../index.html">Main</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><strong>HSSF</strong></small>
|
|
||||||
<div>
|
|
||||||
<small><a href="quick-guide.html">Quick Guide</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="how-to.html">HOWTO</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="use-case.html">Use Case</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="diagrams.html">Pictorial Docs</a></small>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><a href="alternatives.html">Alternatives</a></small>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<small><strong>Contributer's Guide</strong></small>
|
|
||||||
<div>
|
|
||||||
<small><a href="record-generator.html">Record Generator</a></small>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="helptext">
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<th>How do I...?</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<div>Learn more about this project? </div>
|
|
||||||
<div>Print this page...</div>
|
|
||||||
<div>Troubleshoot...</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</td><td id="bodycol" width="100%">
|
|
||||||
<div id="topmodule">
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td nowrap="nowrap">
|
|
||||||
<form method="get" action="http://www.google.com/search" onsubmit="q.value = query.value + ' site:jakarta.apache.org'">
|
|
||||||
<input type="hidden" name="q"><input maxlength="255" size="35" name="id" id="query" type="text">
|
|
||||||
<input type="button" value="Search" name="Search">
|
|
||||||
<img border="0" alt="" height="15" width="2" src="images/seperator2.gif">
|
|
||||||
<input type="radio" name="web" value="web">web site <input type="radio" name="mail" value="mail">mail lists
|
|
||||||
</form>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<h2>Quick Guide to HSSF Features</h2>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#003063"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Quick Guide to Features</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Want to use HSSF read and write spreadsheets in a hurry? This guide is for you. If you're after
|
|
||||||
more in-depth coverage of the HSSF user-API please consult the <a href="how-to.html">HOWTO</a>
|
|
||||||
guide as it contains actual descriptions of how to use this stuff.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#003063"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Index of Features</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#NewWorkbook">How to create a new workbook</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#NewSheet">How to create a sheet</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#CreateCells">How to create cells</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#CreateDateCells">How to create date cells</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#CellTypes">Working with different types of cells</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#Alignment">Aligning cells</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#Borders">Working with borders</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#FrillsAndFills">Fills and color</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#MergedCells">Merging cells</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#WorkingWithFonts">Working with fonts</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="#ReadWriteWorkbook">Reading and writing</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#003063"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Features</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<anchor id="NewWorkbook"></anchor>
|
|
||||||
|
|
||||||
<h4>New Workbook</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="NewSheet"></anchor>
|
|
||||||
|
|
||||||
<h4>New Sheet</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet1 = wb.createSheet("new sheet");
|
|
||||||
HSSFSheet sheet2 = wb.createSheet("second sheet");
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="CreateCells"></anchor>
|
|
||||||
|
|
||||||
<h4>Creating Cells</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
// Create a row and put some cells in it. Rows are 0 based.
|
|
||||||
HSSFRow row = sheet.createRow((short)0);
|
|
||||||
// Create a cell and put a value in it.
|
|
||||||
HSSFCell cell = row.createCell((short)0);
|
|
||||||
cell.setCellValue(1);
|
|
||||||
|
|
||||||
// Or do it on one line.
|
|
||||||
row.createCell((short)1).setCellValue(1.2);
|
|
||||||
row.createCell((short)2).setCellValue("This is a string");
|
|
||||||
row.createCell((short)3).setCellValue(true);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="CreateDateCells"></anchor>
|
|
||||||
|
|
||||||
<h4>Creating Date Cells</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
// Create a row and put some cells in it. Rows are 0 based.
|
|
||||||
HSSFRow row = sheet.createRow((short)0);
|
|
||||||
|
|
||||||
// Create a cell and put a date value in it. The first cell is not styled
|
|
||||||
// as a date.
|
|
||||||
HSSFCell cell = row.createCell((short)0);
|
|
||||||
cell.setCellValue(new Date());
|
|
||||||
|
|
||||||
// we style the second cell as a date (and time). It is important to
|
|
||||||
// create a new cell style from the workbook otherwise you can end up
|
|
||||||
// modifying the built in style and effecting not only this cell but other cells.
|
|
||||||
HSSFCellStyle cellStyle = wb.createCellStyle();
|
|
||||||
cellStyle.setDataFormat(HSSFDataFormat.getFormat("m/d/yy h:mm"));
|
|
||||||
cell = row.createCell((short)1);
|
|
||||||
cell.setCellValue(new Date());
|
|
||||||
cell.setCellStyle(cellStyle);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="CellTypes"></anchor>
|
|
||||||
|
|
||||||
<h4>Working with different types of cells</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
HSSFRow row = sheet.createRow((short)2);
|
|
||||||
row.createCell((short) 0).setCellValue(1.1);
|
|
||||||
row.createCell((short) 1).setCellValue(new Date());
|
|
||||||
row.createCell((short) 2).setCellValue("a string");
|
|
||||||
row.createCell((short) 3).setCellValue(true);
|
|
||||||
row.createCell((short) 4).setCellType(HSSFCell.CELL_TYPE_ERROR);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="Alignment"></anchor>
|
|
||||||
|
|
||||||
<h4>Demonstrates various alignment options</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
public static void main(String[] args)
|
|
||||||
throws IOException
|
|
||||||
{
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
HSSFRow row = sheet.createRow((short) 2);
|
|
||||||
createCell(wb, row, (short) 0, HSSFCellStyle.ALIGN_CENTER);
|
|
||||||
createCell(wb, row, (short) 1, HSSFCellStyle.ALIGN_CENTER_SELECTION);
|
|
||||||
createCell(wb, row, (short) 2, HSSFCellStyle.ALIGN_FILL);
|
|
||||||
createCell(wb, row, (short) 3, HSSFCellStyle.ALIGN_GENERAL);
|
|
||||||
createCell(wb, row, (short) 4, HSSFCellStyle.ALIGN_JUSTIFY);
|
|
||||||
createCell(wb, row, (short) 5, HSSFCellStyle.ALIGN_LEFT);
|
|
||||||
createCell(wb, row, (short) 6, HSSFCellStyle.ALIGN_RIGHT);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a cell and aligns it a certain way.
|
|
||||||
*
|
|
||||||
* @param wb the workbook
|
|
||||||
* @param row the row to create the cell in
|
|
||||||
* @param column the column number to create the cell in
|
|
||||||
* @param align the alignment for the cell.
|
|
||||||
*/
|
|
||||||
private static void createCell(HSSFWorkbook wb, HSSFRow row, short column, short align)
|
|
||||||
{
|
|
||||||
HSSFCell cell = row.createCell(column);
|
|
||||||
cell.setCellValue("Align It");
|
|
||||||
HSSFCellStyle cellStyle = wb.createCellStyle();
|
|
||||||
cellStyle.setAlignment(align);
|
|
||||||
cell.setCellStyle(cellStyle);
|
|
||||||
}
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="Borders"></anchor>
|
|
||||||
|
|
||||||
<h4>Working with borders</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
// Create a row and put some cells in it. Rows are 0 based.
|
|
||||||
HSSFRow row = sheet.createRow((short) 1);
|
|
||||||
|
|
||||||
// Create a cell and put a value in it.
|
|
||||||
HSSFCell cell = row.createCell((short) 1);
|
|
||||||
cell.setCellValue(4);
|
|
||||||
|
|
||||||
// Style the cell with borders all around.
|
|
||||||
HSSFCellStyle style = wb.createCellStyle();
|
|
||||||
style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
|
|
||||||
style.setBottomBorderColor(HSSFCellStyle.BLACK);
|
|
||||||
style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
|
|
||||||
style.setLeftBorderColor(HSSFCellStyle.GREEN);
|
|
||||||
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
|
|
||||||
style.setRightBorderColor(HSSFCellStyle.BLUE);
|
|
||||||
style.setBorderTop(HSSFCellStyle.BORDER_MEDIUM_DASHED);
|
|
||||||
style.setTopBorderColor(HSSFCellStyle.AUTOMATIC);
|
|
||||||
cell.setCellStyle(style);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="FillsAndFrills"></anchor>
|
|
||||||
|
|
||||||
<h4>Fills and colors</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
// Create a row and put some cells in it. Rows are 0 based.
|
|
||||||
HSSFRow row = sheet.createRow((short) 1);
|
|
||||||
|
|
||||||
// Aqua background
|
|
||||||
HSSFCellStyle style = wb.createCellStyle();
|
|
||||||
style.setFillBackgroundColor(HSSFCellStyle.AQUA);
|
|
||||||
style.setFillPattern(HSSFCellStyle.BIG_SPOTS);
|
|
||||||
HSSFCell cell = row.createCell((short) 1);
|
|
||||||
cell.setCellValue("X");
|
|
||||||
cell.setCellStyle(style);
|
|
||||||
|
|
||||||
// Orange "foreground", foreground being the fill foreground not the font color.
|
|
||||||
style = wb.createCellStyle();
|
|
||||||
style.setFillForegroundColor(HSSFCellStyle.ORANGE);
|
|
||||||
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
|
|
||||||
cell = row.createCell((short) 2);
|
|
||||||
cell.setCellValue("X");
|
|
||||||
cell.setCellStyle(style);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="MergedCells"></anchor>
|
|
||||||
|
|
||||||
<h4>Merging cells</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
HSSFRow row = sheet.createRow((short) 1);
|
|
||||||
HSSFCell cell = row.createCell((short) 1);
|
|
||||||
cell.setCellValue("This is a test of merging");
|
|
||||||
|
|
||||||
sheet.addMergedRegion(new Region(1,(short)1,1,(short)2));
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="WorkingWithFonts"></anchor>
|
|
||||||
|
|
||||||
<h4>Working with fonts</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook();
|
|
||||||
HSSFSheet sheet = wb.createSheet("new sheet");
|
|
||||||
|
|
||||||
// Create a row and put some cells in it. Rows are 0 based.
|
|
||||||
HSSFRow row = sheet.createRow((short) 1);
|
|
||||||
|
|
||||||
// Create a new font and alter it.
|
|
||||||
HSSFFont font = wb.createFont();
|
|
||||||
font.setFontHeightInPoints((short)24);
|
|
||||||
font.setFontName("Courier New");
|
|
||||||
font.setItalic(true);
|
|
||||||
font.setStrikeout(true);
|
|
||||||
|
|
||||||
// Fonts are set into a style so create a new one to use.
|
|
||||||
HSSFCellStyle style = wb.createCellStyle();
|
|
||||||
style.setFont(font);
|
|
||||||
|
|
||||||
// Create a cell and put a value in it.
|
|
||||||
HSSFCell cell = row.createCell((short) 1);
|
|
||||||
cell.setCellValue("This is a test of fonts");
|
|
||||||
cell.setCellStyle(style);
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<anchor id="ReadWriteWorkbook"></anchor>
|
|
||||||
|
|
||||||
<h4>Reading and Rewriting Workbooks</h4>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
POIFSFileSystem fs =
|
|
||||||
new POIFSFileSystem(new FileInputStream("workbook.xls"));
|
|
||||||
HSSFWorkbook wb = new HSSFWorkbook(fs);
|
|
||||||
HSSFSheet sheet = wb.getSheetAt(0);
|
|
||||||
HSSFRow row = sheet.getRow(2);
|
|
||||||
HSSFCell cell = row.getCell((short)3);
|
|
||||||
if (cell == null)
|
|
||||||
cell = row.createCell((short)3);
|
|
||||||
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
|
|
||||||
cell.setCellValue("a test");
|
|
||||||
|
|
||||||
// Write the output to a file
|
|
||||||
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
|
|
||||||
wb.write(fileOut);
|
|
||||||
fileOut.close();
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<div id="footer">
|
|
||||||
<table cellpadding="4" cellspacing="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td><a href="http://www.apache.org/">Copyright © 1999-2002 The Apache Software Foundation. All Rights Reserved.</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a><a href="http://jakarta.apache.org/ant/"><img alt="Ant Logo" src="images/ant_logo_medium.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,321 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Record Generator HOWTO</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Record Generator HOWTO</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Record Generator HOWTO</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>How to Use the Record Generator</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>History</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The record generator was born from frustration with translating
|
|
||||||
the Excel records to Java classes. Doing this manually is a time
|
|
||||||
consuming process. It's also very easy to make mistakes.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
A utility was needed to take the defintition of what a
|
|
||||||
record looked like and do all the boring stuff. Thus the
|
|
||||||
record generator was born.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Capabilities</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The record generator takes XML as input and produced the following
|
|
||||||
output:
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>A Java file capabile of decoding and encoding the record.</li>
|
|
||||||
|
|
||||||
<li>A test class with provides a fill-in-the-blanks implementation of a test case
|
|
||||||
for ensuring the record operates as designed.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Usage</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The record generator is invoked as an Ant target (generate-records). It goes
|
|
||||||
through looking for all files in src/records/defintitions ending with _record.xml.
|
|
||||||
It then creates two files; the Java record definition and the Java test case template.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The records themselves have the following general layout:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<table cellspacing="2" cellpadding="2" border="1">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<pre>
|
|
||||||
<record id="0x1032" name="Frame" package="org.apache.poi.hssf.record">
|
|
||||||
<description>The frame record indicates whether there is a border
|
|
||||||
around the displayed text of a chart.</description>
|
|
||||||
<author>Glen Stampoultzis (glens at apache.org)</author>
|
|
||||||
<fields>
|
|
||||||
<field type="int" size="2" name="border type">
|
|
||||||
<const name="regular" value="0" description="regular rectangle or no border"/>
|
|
||||||
<const name="shadow" value="1" description="rectangle with shadow"/>
|
|
||||||
</field>
|
|
||||||
<field type="int" size="2" name="options">
|
|
||||||
<bit number="0" name="auto size"
|
|
||||||
description="excel calculates the size automatically if true"/>
|
|
||||||
<bit number="1" name="auto position"
|
|
||||||
description="excel calculates the position automatically"/>
|
|
||||||
</field>
|
|
||||||
</fields>
|
|
||||||
</record>
|
|
||||||
</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Currently the type can be of type int, float or string. The 'int'
|
|
||||||
type covers bytes, shorts and integers which is selected using a
|
|
||||||
size of 1, 2 or 4. An additional type called varword is used to
|
|
||||||
represent a array of word values where the first short is the length
|
|
||||||
of the array. The string type generation is only partially
|
|
||||||
implemented. If choosing string you must select a size of 'var'.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The Java records are regenerated each time the record generator is
|
|
||||||
run, however the test stubs are only created if the test stub does
|
|
||||||
not already exist. What this means is that you may change test
|
|
||||||
stubs but not the generated records.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>How it Works</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The record generation works by taking an XML file and styling it
|
|
||||||
using XLST. Given that XSLT is a little limited in some ways it was
|
|
||||||
necessary to add a little Java code to the mix.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
See record.xsl, record_test.xsl, FieldIterator.java,
|
|
||||||
RecordUtil.java, RecordGenerator.java
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Limitations</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The record generator does not handle all possible record types and
|
|
||||||
is not ment to. Sometimes it's going to make more sense to generate
|
|
||||||
the records manually. The main point of this thing is to make the
|
|
||||||
easy stuff simple.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Currently the record generator is optimized to create Excel records.
|
|
||||||
It could be adapted to create Word records with a little poking
|
|
||||||
around.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Currently the the XSL file that generates the record calls out to
|
|
||||||
Java objects. This would have been better done as Javascript inside
|
|
||||||
the XSL file itself. The Java code for the record generation is
|
|
||||||
currently quite messy with minimal comments.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,520 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>HSSF Use Cases</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">HSSF</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="quick-guide.html">Quick Guide</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">HOWTO</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="use-case.html">Use Case</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="diagrams.html">Pictorial Docs</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="alternatives.html">Alternatives</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Contributer's Guide</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="record-generator.html">Record Generator</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>HSSF Use Cases</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">HSSF Use Cases</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>HSSF Use Cases</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Use Case 1: Read existing HSSF</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Primary Actor:</em> HSSF client</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Scope:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Level:</em> Summary</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Stakeholders and Interests:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>HSSF client- wants to read content
|
|
||||||
of HSSF file</li>
|
|
||||||
|
|
||||||
<li>HSSF - understands HSSF file</li>
|
|
||||||
|
|
||||||
<li>POIFS - understands underlying POI
|
|
||||||
file system</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Precondition:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Minimal Guarantee:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Main Success Guarantee:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>HSSF client requests HSSF to read
|
|
||||||
a HSSF file, providing an InputStream
|
|
||||||
containing HSSF file in question.</li>
|
|
||||||
|
|
||||||
<li>HSSF requests POIFS to read the HSSF
|
|
||||||
file, passing the InputStream
|
|
||||||
object to POIFS (POIFS use case 1, read existing file system)</li>
|
|
||||||
|
|
||||||
<li>HSSF reads the "Workbook"
|
|
||||||
file (use case 4, read workbook entry)</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Extensions:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">2a. Exceptions
|
|
||||||
thrown by POIFS will be passed on to the HSSF client.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Use Case 2: Write HSSF file</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Primary Actor:</em> HSSF client</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Scope:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Level:</em> Summary</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Stakeholders and Interests:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>HSSF client- wants to write file
|
|
||||||
out.</li>
|
|
||||||
|
|
||||||
<li>HSSF - knows how to write file
|
|
||||||
out.</li>
|
|
||||||
|
|
||||||
<li>POIFS - knows how to write file
|
|
||||||
system out.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Precondition:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>File has been
|
|
||||||
read (use case 1, read existing HSSF file) and subsequently modified
|
|
||||||
or file has been created (use case 3, create HSSF file)</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Minimal Guarantee:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Main Success Guarantee:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>HSSF client
|
|
||||||
provides an OutputStream to
|
|
||||||
write the file to.</li>
|
|
||||||
|
|
||||||
<li>HSSF writes
|
|
||||||
the "Workbook" to its associated POIFS file system (use case
|
|
||||||
5, write workbook entry)</li>
|
|
||||||
|
|
||||||
<li>HSSF
|
|
||||||
requests POIFS to write its file system out, using the OutputStream
|
|
||||||
obtained from the HSSF client (POIFS use case 2, write file system).</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Extensions:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">3a. Exceptions
|
|
||||||
from POIFS are passed to the HSSF client.</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Use Case 3:Create HSSF file</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Primary Actor:</em> HSSF client</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Scope:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<em>Level:</em> Summary</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Stakeholders and Interests:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>HSSF client- wants to create a new
|
|
||||||
file.</li>
|
|
||||||
|
|
||||||
<li>HSSF - knows how to create a new
|
|
||||||
file.</li>
|
|
||||||
|
|
||||||
<li>POIFS - knows how to creat a new
|
|
||||||
file system.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Precondition:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Minimal Guarantee:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Main Success Guarantee:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>HSSF requests
|
|
||||||
POIFS to create a new file system (POIFS use case 3, create new file
|
|
||||||
system)</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Extensions:</em>
|
|
||||||
None</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Use Case 4: Read workbook entry</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Primary Actor:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Scope:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<em>Level:</em> Summary</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Stakeholders and Interests:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>HSSF - knows how to read the
|
|
||||||
workbook entry</li>
|
|
||||||
|
|
||||||
<li>POIFS - knows how to manage the file
|
|
||||||
system.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Precondition:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>The file
|
|
||||||
system has been read (use case 1, read existing HSSF file) or has
|
|
||||||
been created and written to (use case 3, create HSSF file system;
|
|
||||||
use case 5, write workbook entry).</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Minimal
|
|
||||||
Guarantee:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Main Success Guarantee:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
HSSF requests POIFS for the "Workbook" file</li>
|
|
||||||
|
|
||||||
<li>POIFS returns
|
|
||||||
an InputStream for the file.</li>
|
|
||||||
|
|
||||||
<li>HSSF reads
|
|
||||||
from the InputStream provided by POIFS</li>
|
|
||||||
|
|
||||||
<li>HSSF closes
|
|
||||||
the InputStream provided by POIFS</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Extensions:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">3a. Exceptions
|
|
||||||
thrown by POIFS will be passed on</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Use Case 5: Write workbook entry</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Primary Actor:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Scope:</em> HSSF</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<em>Level:</em> Summary</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Stakeholders and Interests:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>HSSF - knows how to manage the
|
|
||||||
write the workbook entry.</li>
|
|
||||||
|
|
||||||
<li>POIFS - knows how to manage the file
|
|
||||||
system.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Precondition:</em>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Either an existing HSSF file has
|
|
||||||
been read (use case 1, read existing HSSF file) or an HSSF file has
|
|
||||||
been created (use case 3, create HSSF file).</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Minimal Guarantee:</em> None</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Main Success Guarantee:</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>HSSF
|
|
||||||
checks the POIFS file system directory for the "Workbook"
|
|
||||||
file (POIFS use case 8, read file system directory)</li>
|
|
||||||
|
|
||||||
<li>If "Workbook" is in the directory, HSSF requests POIFS to
|
|
||||||
replace it with the new workbook entry (POIFS use case 4, replace file
|
|
||||||
in file system). Otherwise, HSSF requests POIFS to write the new
|
|
||||||
workbook file, with the name "Workbook" (POIFS use case 6,
|
|
||||||
write new file to file system)</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>Extensions:</em>None</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.3 KiB |
|
@ -1,471 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*"><font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Logo Contest</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The POI committers have voted to
|
|
||||||
<a href="http://jakarta.apache.org/ant">"innovate"</a> and hold a
|
|
||||||
logo contest. The big P at the top of the page is just a placeholder.
|
|
||||||
So the rules are pretty much this:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://burnallgifs.org/">Only PNG submissions</a>
|
|
||||||
be accepted (we can convert them as needed).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Submissions must be sent to the <a href="http://jakarta.apache.org/site/mail.html">POI
|
|
||||||
User's mailing list</a> via an http link. If you do not
|
|
||||||
have an available webserver contact Andy (acoliver at apache dot
|
|
||||||
org) and ask him to post it for you (and he will if it doesn't
|
|
||||||
suck royally). Large binary attachments annoyingly posted to
|
|
||||||
the list will be rebuked. :-)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Image authors must be willing to work with us on any font and
|
|
||||||
sizing issues, etc.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
All submissions become property of the Apache Software
|
|
||||||
Foundation to do whatever it wants with them (thanks!).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
A non-binding poll will be taken and everyone can vote.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Based on the poll results and the fact that Andy won't vote for
|
|
||||||
anything that isn't some kind of tiki god or hawaiian theme
|
|
||||||
(maybe a poi pounder would be acceptable), the committers will
|
|
||||||
vote on the new POI logo.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Logos should be submitted in two flavors: one for the top of the
|
|
||||||
page and another for posting on other sites that note projects
|
|
||||||
that use POI technology.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
The winner will get credit posted somewhere on the POI site and
|
|
||||||
have their logo used wherever POI is proudly served.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
You can see the current submissions <a href="news/logocontest.html">here.</a>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Purpose</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The POI project consists of APIs for manipulating various file formats
|
|
||||||
based upon Microsoft's OLE 2 Compound Document format using pure Java.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
OLE 2 Compound Document Format based files include most Microsoft Office
|
|
||||||
files such as XLS and DOC.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
As a general policy we try to collaborate as much as possible with other projects to
|
|
||||||
provide this functionality. Examples include: <a href="http://xml.apache.org/cocoon">Cocoon</a> for
|
|
||||||
which you'll soon find generators and serializers for our projects;
|
|
||||||
<a href="http://www.openoffice.org">Open Office.org</a> with whom we collaborate in documenting the
|
|
||||||
XLS format; and <a href="http://jakarta.apache.org/lucene">Lucene</a> for which we'll soon have file
|
|
||||||
format interpretors. When practical, we donate components directly to those projects for POI-enabling them.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Why/when would I use POI?</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
We'll tackle this on a component level. POI refers to the whole project.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
So why should you use POIFS or HSSF?
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
You'd use POIFS if you had a document written in OLE 2 Compound Document Format, probably written using
|
|
||||||
MFC, that you needed to read in Java. Alternatively, you'd use POI to write OLE 2 Compound Document Format
|
|
||||||
if you needed to inter-operate with software running on the Windows platform. We are not just bragging when
|
|
||||||
we say that POIFS is the most complete and correct port of this file format to date!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
You'd use HSSF if you needed to read or write an XLS (Excel) file using Java. You can also read and modify
|
|
||||||
spreadsheets using this API, although right now writing is more mature.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>What does POI stand for?</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
POI stands for Poor Obfuscation Implementation. Why would we name our project such a derogatory name? Well,
|
|
||||||
Microsoft's OLE 2 Compound Document Format is a poorly conceived thing. It is essentially an archive structured
|
|
||||||
much like the old DOS FAT filesystem. Redmond chose, instead of using tar, gzip, zip or arc, to invent their own
|
|
||||||
archive format that does not provide any standard encryption or compression, is not very appendable and is prone
|
|
||||||
to fragmentation.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Poi is also a Hawaiian delicacy that <a href="http://www.m-w.com">Merriam Webster's dictionary</a> defines as:
|
|
||||||
"A Hawaiian food of taro root cooked, pounded, and kneaded to a paste and often allowed to ferment." This seemed
|
|
||||||
strangely descriptive of the file format.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
So if you like acronyms, then POI is an acronym. If you hate them, then we just used the name of the food for our
|
|
||||||
project. If you wish to signify your love or hate for acronyms, use POI or Poi to refer to the project respectively.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Components To Date</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">A common misconception is that POI writes Excel files. POI is the name of the project. POI contains several
|
|
||||||
components, one of which, HSSF, writes Excel files. The following are components of the entire POI project
|
|
||||||
and a brief summary of their purpose.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>POIFS (POI Filesystem)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">POIFS is the oldest and most stable part of the project. It is our port of the OLE 2 Compound Document Format to
|
|
||||||
pure Java. It supports both read and write functionality. All of our components ultimately rely on it by
|
|
||||||
definition. Please see <a href="poifs/index.html">the POIFS project page</a> for more information.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HSSF (Horrible Spreadsheet Format)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">HSSF is our port of the Microsoft Excel 97(-2002) file format (BIFF8) to pure Java. It supports read and write
|
|
||||||
capability. Please see <a href="hssf/index.html">the HSSF project page</a> for more information.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HDF (Horrible Document Format)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">HDF is our port of the Microsoft Word 97 file format to pure Java. It supports read and write capability.
|
|
||||||
Please see <a href="hdf/index.html">the HDF project page for more information</a>. This component is
|
|
||||||
in the early stages of design. Jump in!</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HPSF (Horrible Property Set Format)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">HPSF is our port of the OLE 2 property set format to pure
|
|
||||||
Java. Property sets are mostly use to store a document's properties
|
|
||||||
(title, author, date of last modification etc.), but they can be used
|
|
||||||
for application-specific purposes as well. Currently HPSF supports
|
|
||||||
read functionality only. Please see <a href="hpsf/index.html">the HPSF project page</a> for more
|
|
||||||
information.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>What happened to the HSSF Serializer?</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">The HSSF Serializer, which was part of our 1.0 release and last builds on
|
|
||||||
<a href="http://www.sourceforge.net/projects/poi">Sourceforge</a>, has been donated to the Cocoon project. We're
|
|
||||||
currently in the process of porting it over.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Contributing </b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
So you'd like to contribute to the project? Great! We need enthusiastic, hard-working, talented folks to help
|
|
||||||
us on the project in several areas. The first is bug reports and feature requests! The second is documentation -
|
|
||||||
we'll be at your every beck and call if you've got a critique or you'd like to contribute or otherwise improve
|
|
||||||
the documentation. We could especially use some help documenting the HSSF file format! Last, but not least, we
|
|
||||||
could use some binary crunching Java coders to chew through the convolution that characterizes Microsoft's file
|
|
||||||
formats and help us port new ones to a superior Java platform!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">So if you're motivated, ready, and have the time, join the mail lists and we'll be happy to help you get started on the
|
|
||||||
project!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,365 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*"><font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>POI in the news</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
These are articles/etc. posted about POI around the web. If you
|
|
||||||
see POI in the news or mentioned at least somewhat prominently
|
|
||||||
on a site (not your homepage that you put the work POI on in
|
|
||||||
order to get us to link you and by the why here is a picture of
|
|
||||||
your wife in kids) then send a patch to the list. In general
|
|
||||||
equal time will be given so please feel free to send inflamatory
|
|
||||||
defamation as well as favorable, technical and factual. Really
|
|
||||||
stupid things won't be mentioned (sorry).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>English</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.need-a-cake.com/categories/cocoonWeblog/2002/03/07.html">
|
|
||||||
Nicola announces POI serialization code
|
|
||||||
</a> - Matthew Langham's Radio Weblog
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://javalobby.org/discussionContext/showThreaded/frm/javalobby?folderId=20&discussionContextId=11523">
|
|
||||||
Jakarta POI 1.4583 Released</a> - JavaLobby
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://javalobby.org/discussionContext/showThreaded/frm/javalobby?discussionContextId=11442&folderId=20">
|
|
||||||
POI project moves to Jakarta (OLE 2 CDF/Excel/Word in
|
|
||||||
pure java)</a> - JavaLobby
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.geocities.com/marcoschmidt.geo/java-image-coding.html">
|
|
||||||
List of Java libraries to read and write image and document files
|
|
||||||
</a> Marco Schmidt's homepage (normally we wouldn't
|
|
||||||
feature someone's homepage but its an extensive list of
|
|
||||||
information including "alternatives to POI" (for those
|
|
||||||
of you who are very wealthy). But heck I think I'll
|
|
||||||
bookmark his page for myself since he's like got every
|
|
||||||
piece of info known to man linked or featured on it!
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://radio.weblogs.com/0101350/">
|
|
||||||
The Experiences of an Operator (Måns af Klercker)
|
|
||||||
</a> - radio.weblogs.com
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://dataconv.org/apps_office.html">
|
|
||||||
DATACONV - Data Conversion Tools: Office
|
|
||||||
</a> DATACONV
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://chicago.sourceforge.net/devel/">
|
|
||||||
Chicago Developer Page
|
|
||||||
</a>
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.onjava.com/pub/d/1157">
|
|
||||||
POI/POI Serialization Project
|
|
||||||
</a> - Man you know you've hit the bigtime when
|
|
||||||
O'Reilly Likes you.. ;-)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.javaworld.com/netnews/index.shtml">
|
|
||||||
News Around the Net
|
|
||||||
</a> - Java World
|
|
||||||
</li>
|
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Deutsch (German)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.entwickler.com/news/2002/02/5718/news.shtml">
|
|
||||||
Neues Apache-Projekt bringt Word- und Excel nach Java
|
|
||||||
</a> - entwickler.com
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Español (Spanish)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.javahispano.com/noticias/todas.jsp">
|
|
||||||
OLE2 desde Java nativo
|
|
||||||
</a> - javaHispano
|
|
||||||
</li>
|
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Francais (French)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://linuxfr.org/section/D%E9veloppeur,0,1,8,0.html">
|
|
||||||
Excel/OLE accessibles
|
|
||||||
</a> - Da Linux French Page
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Nihongo (Japanese)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
|
|
||||||
<a href="http://www.gimlay.org/~andoh/java/javanew.html">
|
|
||||||
What's new with java?
|
|
||||||
</a> - gimlay.org
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>No freaking idea</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
If you can read one of these languages, send mail to the list
|
|
||||||
telling us what language it is and we'll categorize it!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,181 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Live Sites using Poi</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Live Sites using Poi</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Live Sites using Poi</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Live Sites using Poi</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">Currently we don't have any sites listed that use Poi, but we're sure they're out there.
|
|
||||||
Help us change this. If you've
|
|
||||||
written a site that utilises Poi let us know.
|
|
||||||
</p>
|
|
||||||
<!--
|
|
||||||
<ul>
|
|
||||||
<li><link href=""></link></li>
|
|
||||||
</ul>
|
|
||||||
</s1>
|
|
||||||
-->
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,200 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Mail Archives</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Mail Archives</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Mail Archives</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Mailing List Archives</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
There are a number of mailing list archives available.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0">
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>poi-user</em></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>poi-dev</em></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>Regularly updated?</em></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>Searchable?</em></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>Speed</em></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><em>Other features?</em></font></td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><a href="http://www.mail-archive.com/poi-user@jakarta.apache.org">
|
|
||||||
Apache</a></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000"><a href="http://www.mail-archive.com/poi-dev@jakarta.apache.org">
|
|
||||||
Apache</a></font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000">Yes</font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000">?</font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000">?</font></td>
|
|
||||||
<td valign="top" bgcolor="#a0ddf0" align="left"><font size="-1" color="#000000">?</font></td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,320 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Mailing Lists</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Mailing Lists</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Mailing Lists</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Important Notice</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>IMPORTANT: Before posting a question or problem to any mailing list,
|
|
||||||
</em>please first look at the following resources in this order:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<connect href="faq.html" type="simple" show="replace" actuate="user" mode="soft">FAQs</connect>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://dmoz.org/Computers/Data_Formats/Markup_Languages/XML/">ODP XML links</a>
|
|
||||||
- a wealth of general XML information.</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<connect href="mail-archives.html" type="simple" show="replace" actuate="user" mode="soft">Mailing list archives</connect> -
|
|
||||||
a veritable goldmine of Poi-specific information - if you know where to look!</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>IMPORTANT:</em> Careful postings please.
|
|
||||||
These are high-volume lists, so we all needs ways to help us all
|
|
||||||
work smarter.
|
|
||||||
See tips for <a href="contrib.html#tips">Contributing</a>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Poi Users</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<a href="mailto://poi-user-subscribe@jakarta.apache.org">Subscribe</a>
|
|
||||||
<a href="mailto://poi-user-unsubscribe@jakarta.apache.org">Unsubscribe</a>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The general list, for problems, bug reports, asking for advice on how
|
|
||||||
best to implement a site, comparisons with other frameworks, etc.
|
|
||||||
But don't forget to look in the FAQ first, please!</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>This is also not an appropriate list for general Java questions.</em>
|
|
||||||
Instead try <a href="news:comp.lang.java.help">news:comp.lang.java.help</a>
|
|
||||||
or <a href="http://hotdispatch.com/">http://hotdispatch.com/</a>, for
|
|
||||||
example.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>This is not an appropriate list for general XML questions.</em>
|
|
||||||
Instead
|
|
||||||
look at the <a href="http://dmoz.org/">ODP</a> for
|
|
||||||
<a href="http://dmoz.org/Computers/Data_Formats/Markup_Languages/XML/">XML/XSL links</a>
|
|
||||||
(such as the excellent <a href="http://www.zvon.org/xxl/XSLTutorial/Books/Book1/index.html">
|
|
||||||
XSL tutorial at Zvon.org</a>) or try the
|
|
||||||
<a href="http://www.mulberrytech.com/xsl/">Mulberrytech XSL list</a>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<em>IMPORTANT:</em> If you are posting about a problem
|
|
||||||
you are having (as most people do), it will aid in finding a
|
|
||||||
speedy resolution if you provide full configuration details
|
|
||||||
(especially the <em>version number</em>, but also your
|
|
||||||
operating system, JDK version, etc.), and full details of any
|
|
||||||
errors encountered (including full error messages and stack
|
|
||||||
traces).</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Please also have some consideration for the other users on the list - this is a
|
|
||||||
busy list and we do not appreciate getting the exact same message posted impatiently
|
|
||||||
several times a day/week! Doing so is only likely to make your question answered more
|
|
||||||
slowly, or not at all, not faster.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Poi Dev</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
<a href="mailto://poi-dev-subscribe@jakarta.apache.org">Subscribe</a>
|
|
||||||
<a href="mailto://poi-dev-unsubscribe@jakarta.apache.org">Unsubscribe</a>
|
|
||||||
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">This list is for developers <em>working on</em> or wanting to work on
|
|
||||||
Poi itself (not developers merely working <em>with</em> Poi),
|
|
||||||
for code patches to Poi to be posted (please use <code>diff -u</code> format),
|
|
||||||
and for general Poi questions.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">Note this is <em>NOT</em> for general Poi questions like "Why
|
|
||||||
isn't Poi working on my machine?" -
|
|
||||||
please ask those sorts of questions on users list (after reading the
|
|
||||||
FAQ first, of course).</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Related Mailing Lists</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">(See also <a href="http://dmoz.org/Computers/Data_Formats/Markup_Languages/XML/">
|
|
||||||
ODP XML links</a> for related websites.)</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://xml.apache.org/mail.html">XML Apache Projects</a> -
|
|
||||||
list of mailing lists for all the projects on xml.apache.org.</li>
|
|
||||||
|
|
||||||
<li>Some servlet engines have their own mailing lists for servlet-engine
|
|
||||||
configuration questions, such as
|
|
||||||
<a href="mailto:tomcat-user-subscribe@jakarta.apache.org">tomcat-user</a> (note it is "user"
|
|
||||||
and not "users").</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 7.6 KiB |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 6.4 KiB |
|
@ -1,181 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title></title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">News</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="logocontest.html">Logo Submissions</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*"><font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>POI logos</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Here are the current logo submissions. Thanks to the artists!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Michael Mosmann</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<img src="images/logoMichaelMosmann.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Loïc Lefèvre</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<img src="images/logoLoicLefevre.png">
|
|
||||||
<img src="images/logoLoicLefevre2.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Glen Stampoultzis</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<img src="images/logoGlenStampoutlzis.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Marcus Gustafsson</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<img src="images/logoGustafsson1.png">
|
|
||||||
<img src="images/logoGustafsson2.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,307 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Overview</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Overview</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Overview</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>What is it?</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">The POI project is the master project for developing pure
|
|
||||||
Java ports of file formats based on Microsoft's OLE 2 Compound
|
|
||||||
Document Format. OLE 2 Compound Document Format is used by
|
|
||||||
Microsoft Office Documents, as well as by programs using MFC
|
|
||||||
property sets to serialize their document objects.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Sub-Projects</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
There following are ports, packages or components contained in the POI project.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>POIFS</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<a href="poifs/index.html">POIFS</a> is the set of APIs
|
|
||||||
for reading and writing OLE 2 Compound Document Formats using (only) Java.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HSSF</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<a href="hssf/index.html">HSSF</a> is the set of APIs
|
|
||||||
for reading and writing Microsoft Excel 97(-XP) spreadsheet using (only) Java.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HDF</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<a href="hdf/index.html">HDF</a> is the set of APIs
|
|
||||||
for reading and writing Microsoft Word 97(-XP) spreadsheet using (only) Java.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>HPSF</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<a href="hpsf/index.html">HPSF</a> is the set of APIs
|
|
||||||
for reading property sets using (only) Java.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>POI-Utils</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
|
|
||||||
<a href="utils/index.html">POI-Utils</a> are general purpose artifacts
|
|
||||||
from POI development that have not yet been implemented elsewhere. We're
|
|
||||||
always looking to donate these and maintain them as part of a general library
|
|
||||||
used in another project. These are things we need to complete our mission but
|
|
||||||
are generally outside of it.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,152 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>PoiFS</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="how-to.html">How To</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="fileformat.html">File System Documentation</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="usecases.html">Use Cases</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>PoiFS</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">PoiFS</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">POIFS is a pure Java implementation of the OLE 2 Compound
|
|
||||||
Document format.</p>
|
|
||||||
|
|
||||||
<p align="justify">By definition, all APIs developed by the POI project are
|
|
||||||
based somehow on the POIFS API.</p>
|
|
||||||
|
|
||||||
<p align="justify">A common confusion is on just what POIFS buys you or what OLE
|
|
||||||
2 Compound Document format is exactly. POIFS does not buy you
|
|
||||||
DOC, or XLS, but is necessary to generate or read DOC or XLS
|
|
||||||
files. You see, all file formats based on the OLE 2 Compound
|
|
||||||
Document Format have a common structure. The OLE 2 Compound
|
|
||||||
Document Format is essentially a convoluted archive
|
|
||||||
format. Think of POIFS as a "zip" library. Once you can get
|
|
||||||
the data in a zip file you still need to interpret the
|
|
||||||
data. As a general rule, while all of our formats <b>use</b>
|
|
||||||
POIFS, most of them attempt to abstract you from it. There
|
|
||||||
are some circumstances where this is not possible, but as a
|
|
||||||
general rule this is true.</p>
|
|
||||||
|
|
||||||
<p align="justify">If you're an end user type just looking to generate XLS
|
|
||||||
files, then you'd be looking for HSSF not POIFS; however, if
|
|
||||||
you have legacy code that uses MFC property sets, POIFS is
|
|
||||||
for you! Regardless, you may or may not need to know how to
|
|
||||||
use POIFS but ultimately if you use technologies that come
|
|
||||||
from the POI project, you're using POIFS underneith. Perhaps
|
|
||||||
we should have a branding campaign "POIFS Inside!". ;-)</p>
|
|
||||||
|
|
||||||
<p align="justify">TODO: copy POIFS docs and port to XML (in progress). For now
|
|
||||||
please reference <a href="http://poi.sourceforge.net">old
|
|
||||||
site</a>.</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,148 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Resolutons</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">About</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Resolutions</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="res001.html">Coding Standards</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Resolutons</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Resolutons</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>About Resolutions</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Every project on Jakarta has resolutions that they vote on.
|
|
||||||
Decisions are made, etc. But what happens once those decisions
|
|
||||||
are made? They are archived in the mail list archive never to
|
|
||||||
be read again (once its not in the top 10 or so posts). So they
|
|
||||||
get discussed again and again.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Rather than have that big waste of time, we have this section to
|
|
||||||
record important POI decisions. Once a decision is passed it
|
|
||||||
need only be linked to this page (either by creating a page for
|
|
||||||
it or by simply linking it to the archive messages). Wherever
|
|
||||||
possible a brief about how many votes for and against an maybe
|
|
||||||
some background should be posted.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
This section is intended mainly to reduce big waste of time
|
|
||||||
discussions from taking away from whats important...developing
|
|
||||||
POI! :-D
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,252 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>POI Resoluton</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">About</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Resolutions</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="res001.html">Coding Standards</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>POI Resoluton</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">POI Resoluton</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Resolution 001 - Minimal Coding Standards</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Majority Position</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
As the POI project has grown the "styles" used have become more
|
|
||||||
varied, some see this as a bad thing, but in reality it
|
|
||||||
can be a good thing. Each can learn from the different
|
|
||||||
styles by working with different code. That being said
|
|
||||||
there are some universal "good quality" guidelines that
|
|
||||||
must be adopted on a project of any proportions.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Marc Johnson Authored the following resolution:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
On Tue, 2002-01-08 at 22:23, Marc Johnson wrote:
|
|
||||||
Standards are wonderful; everyone should have a set.
|
|
||||||
Here's what I propose for coding standards for POI WRT comments (should I
|
|
||||||
feel the need, I'll post more of these little gems):
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
All classes and interfaces MUST have, right at the beginning, the POI
|
|
||||||
License (see poi/doc/LICENSE).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
All classes and interfaces MUST include class javadoc. Conventionally,
|
|
||||||
this goes after the package and imports, and before the start of the class
|
|
||||||
or interface. The class javadoc MUST have at least one @author tag
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
All methods that are accessible outside the class MUST have javadoc
|
|
||||||
comments. In other words, if it isn't private, it MUST have javadoc
|
|
||||||
comments. Simple getters can consist of a simple @return tag; simple setters
|
|
||||||
can consist of a simple @param tag. Anything else requires some verbiage
|
|
||||||
plus all the standard javadoc tags as appropriate. You MUST include @throws
|
|
||||||
or @exception for any non-runtime exceptions, and you SHOULD document any
|
|
||||||
runtime exceptions you expect to throw. @throws/@exception tags SHOULD
|
|
||||||
include an explanation of why that exception would be thrown. If your method
|
|
||||||
might return null, you MUST say so. An accompanying explanation of the
|
|
||||||
circumstances for doing so would be nice.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Amendments (informal by extension and not by vote)</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
As opposed to the formerly used POI License which was
|
|
||||||
based on the Apache Public License, now that POI is part of
|
|
||||||
Jakarta, use the APL 1.1 for the header. Currently, the
|
|
||||||
Apache Software Foundation requires us to use the full
|
|
||||||
long version.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Dissent</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The motion was passed unanimously with no negative or
|
|
||||||
positive votes.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Comments</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Andy didn't feel like going through his mail and sucking
|
|
||||||
out the comments.. If there is anything you feel should
|
|
||||||
be added here do it yourself ;-).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,226 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Things To Do for Poi</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Things To Do for Poi</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Things To Do for Poi</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>high</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Finish HDF
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Finish Charts
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Add Formulas.
|
|
||||||
</li>
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>medium</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
<sl>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Expose functionality in low level records in higher level API
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Implement more record types (for other things ... not sure
|
|
||||||
what this will mean yet).
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Implement more record types (for other things ... not sure
|
|
||||||
what this will mean yet).
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Add more dummy checks (for when API user's do things they
|
|
||||||
"can't" do)
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Add support for embedded graphics and stuff like that.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<em>[code]</em>
|
|
||||||
Create new adapter object for handling MulBlank, MulRk, Rk
|
|
||||||
records.
|
|
||||||
</li>
|
|
||||||
</sl>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,134 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Poi Utils</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">Navigation</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="../index.html">Main</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Poi Utils</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Poi Utils</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Overview</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">The POI Utils are classes we're looking to donate elsewhere and include.
|
|
||||||
These are usually classes that while are required for our mission,
|
|
||||||
are somehow outside of it. General utilities that could be used in
|
|
||||||
any project are what we would normally put here. If you see one, and you
|
|
||||||
think "gee that would be great as part of X project" then let us know.
|
|
||||||
While we wish to put these in their rightful place, we also don't want to
|
|
||||||
include a 40mb jar file just to process text strings, so that will
|
|
||||||
be a consideraton.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
Currently, we're looking into which subprojects in the Jakarta Commons project
|
|
||||||
to donate these too. The "Poi Utils" package won't go away, as there may
|
|
||||||
be later classes. The idea is that "go ahead and add it, we'll merge it or
|
|
||||||
find an alternative later, just keep pounding out that poi!"
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,267 +0,0 @@
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
||||||
<meta content="text/html; charset=ISO-8859-1">
|
|
||||||
<title>Who we are</title>
|
|
||||||
<style type="text/css">
|
|
||||||
body { background-color: white; font-size: normal; color: black ; }
|
|
||||||
a { color: #525d76; }
|
|
||||||
a.black { color: #000000;}
|
|
||||||
table {border-width: 0; width: 100%}
|
|
||||||
table.centered {text-align: center}
|
|
||||||
table.title {text-align: center; width: 80%}
|
|
||||||
img{border-width: 0;}
|
|
||||||
span.s1 {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.s1_white { font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #ffffff; }
|
|
||||||
span.title {font-family: Helvetica, Arial, sans-serif; font-weight: bold; color: #000000; }
|
|
||||||
span.c1 {color: #000000; font-family: Helvetica, Arial, sans-serif}
|
|
||||||
tr.left {text-align: left}
|
|
||||||
hr { width: 100%; size: 2}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
|
||||||
<td valign="top" align="left"><a href="http://jakarta.apache.org/index.html"><img hspace="0" vspace="0" border="0" src="images/jakarta-logo.gif"></a></td><td width="100%" valign="top" align="left" bgcolor="#ffffff"><img hspace="0" vspace="0" border="0" align="right" src="images/header.gif"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" bgcolor="#525d76"><span class="c1"><a class="black" href="http://www.apache.org/">www.apache.org ></a><a class="black" href="http://jakarta.apache.org/">jakarta.apache.org ></a><a href="http://jakarta.apache.org/poi/" class="black">jakarta.apache.org/poi</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td height="8"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table border="0" cellpadding="0" cellspacing="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td nowrap="1" valign="top" width="14%">
|
|
||||||
<br>
|
|
||||||
<span class="s1">About</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="index.html">Index</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">History</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="historyandfuture.html">Future</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/builds/jakarta-poi/">Download</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI10Vision.html">1.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="plan/POI20Vision.html">2.0 Vision</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="who.html">Who we are</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="changes.html">Changes</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="faq.html">FAQ</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Sub-Projects</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="overview.html">Overview</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="poifs/index.html">POIFS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hssf/index.html">HSSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hdf/index.html">HDF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="hpsf/index.html">HPSF</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="utils/index.html">POI-Utils</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">References</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="inthenews.html">In The News</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="livesites.html">Live Sites</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://sc.openoffice.org/excelfileformat.pdf">XLS spec [PDF]</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://xml.apache.org/cocoon/">Apache Cocoon</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="resolutions/index.html">Resolutions</a>
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<span class="s1">Get Involved</span>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="contrib.html">Contributing</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://nagoya.apache.org/bugzilla/buglist.cgi?product=POI">Bug Database</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/cvsindex.html">CVS</a>
|
|
||||||
<br>
|
|
||||||
<a class="s1" href="http://jakarta.apache.org/site/mail.html">Mail Lists</a>
|
|
||||||
<br>
|
|
||||||
</td><td width="1%">
|
|
||||||
<br>
|
|
||||||
</td><td align="left" valign="top" width="*">
|
|
||||||
<title>Who we are</title>
|
|
||||||
<table width="100%" align="center" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table border="0" cellpadding="1" cellspacing="0" class="title">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525d76">
|
|
||||||
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="centered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#f3dd61"><span class="title">Who we are</span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
<font size="-2" color="#000000">
|
|
||||||
<p>
|
|
||||||
<a href="mailto:"></a>
|
|
||||||
</p>
|
|
||||||
</font>
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="100%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+1"><font face="Arial,sans-serif"><b>Who we are</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
The Poi Project operates on a meritocracy: the more you do, the more
|
|
||||||
responsibility you will obtain. This page lists all of the people who have
|
|
||||||
gone the extra mile and are Committers. If you would like to get involved,
|
|
||||||
the first step is to join the mailing lists.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p align="justify">
|
|
||||||
We ask that you please do not send us emails privately asking for support.
|
|
||||||
We are non-paid volunteers who help out with the project and we do not
|
|
||||||
necessarily have the time or energy to help people on an individual basis.
|
|
||||||
Instead, we have set up mailing lists which often contain hundreds of
|
|
||||||
individuals who will help answer detailed requests for help. The benefit of
|
|
||||||
using mailing lists over private communication is that it is a shared
|
|
||||||
resource where others can also learn from common mistakes and as a
|
|
||||||
community we all grow together.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Advisors</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://jakarta.apache.org/avalon/authors/stefano.html">Stefano Mazzocchi</a> (stefano at apache dot org)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Committers</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://trilug.org/~acoliver">Andrew C. Oliver</a> (acoliver at apache dot org)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://www.marcj.com">Marc Johnson</a> (mjohnson at apache dot org)</li>
|
|
||||||
|
|
||||||
<li>Glen Stampoultzis (glens at apache.org)</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="http://www.rainer-klute.de/">Rainer Klute</a> (klute at apache dot org)</li>
|
|
||||||
|
|
||||||
<li>Nicola Ken Barozzi (barozzi at nicolaken dot com)</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div align="right">
|
|
||||||
<table cellspacing="0" cellpadding="2" border="0" width="99%">
|
|
||||||
<tr>
|
|
||||||
<td bgcolor="#525D76"><font color="#ffffff" size="+0"><font face="Arial,sans-serif"><b>Developers</b></font></font></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Ryan Ackley (sackley at cfl dot rr dot com)</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<br>
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<hr noshade="" size="1">
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="center"><i>Copyright © 2002 Apache Software Foundation</i></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%">
|
|
||||||
<br>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td align="right" width="100%"><a href="http://krysalis.org/"><img alt="Krysalis Logo" src="images/krysalis-compatible.jpg"></a><a href="http://xml.apache.org/cocoon/"><img alt="Cocoon Logo" src="images/built-with-cocoon.gif"></a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</body>
|
|
||||||
</html>
|
|