-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathindex.html
295 lines (264 loc) · 9.56 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>A Java API to read, write and modify Excel spreadsheets</title>
<link rel="stylesheet" href="jxl.css" />
</head>
<body>
<p class="bighead">
Java Excel API - A Java API to read, write and modify Excel
spreadsheets
</p>
<p>
This is the home page of Java Excel API - open source Java API which
allows Java developers to read Excel spreadsheets and to generate Excel
spreadsheets dynamically. In addition, it contains a mechanism which
allows java applications to read in a spreadsheet, modify some cells and
write out the new spreadsheet.
<br />
<br />
This API allows non Windows operating systems to run pure
Java applications which can both process and deliver Excel spreadsheets.
Because it is Java, this API may be
invoked from within a servlet, thus giving access to Excel functionality
over internet and intranet web applications.
<br />
</p>
<p class="head">
Features
</p>
<p>
<li>Reads data from Excel 95, 97, 2000 workbooks</li>
<li>Reads and writes formulas (Excel 97 and later only)</li>
<li>Generates spreadsheets in Excel 2000 format</li>
<li>Supports font, number and date formatting</li>
<li>Supports shading and colouring of cells</li>
<li>Modifies existing worksheets</li>
<li>Supports image creation</li>
<li>Preserves macros on copy</li>
<li>Customizable logging</li>
</p>
<p class="head">
Limitations
</p>
<p>
<li>
JExcelApi does not generate or chart, graph or macro information.
This information is however preserved when spreadsheets are copied
</li>
<li>
When adding images to a sheet, only PNG image formats are supported
</li>
</p>
<p class="head">
Getting started
</p>
<p>
The distribution comes with a number of demo programs which illustrate
how the API may be used.
</p>
<p class="smallhead">
Reading Spreadsheets
</p>
<p>
When reading a spreadsheet, the demo programs
may be used "as is" to convert Excel files to CSV and XML formats in
a reasonable manner.
<br />
<br />
<a class="technical">
java -jar jxl.jar -csv myspreadsheet.xls
</a>
<br />
<br />
To view the spreadsheet as XML, invoke the demo as follows
<br />
<br />
<a class="technical">
java -jar jxl.jar -xml myspreadsheet.xls
</a>
<br />
<br />
In order to present the data the demo uses the classes xlrd/CSV.java and
xlrd/XML.java respectively. For more sophisticated processing, these
classes may be used as a starting point. Click
<a href="tutorial.html#reading">here</a> for a tutorial.
<br />
<br />
</p>
<p class="smallhead">
Generating Spreadsheets
</p>
<p>
The write demo illustrates the functionality accessible
within JExcelApi to generate spreadsheets. The spreadsheet
generated by the demo includes
different fonts, number formatting, date formatting, colours and borders.
<br /><br />
To generate the demo spreadsheet, invoke JExcelApi as follows:
<br />
<br />
<a class="technical">
java -jar jxl.jar -write myspreadsheet.xls
</a>
<br />
<br />
This will generate the sample spreadsheet called myspreadsheet.xls
in the current working directory. The class used to generate this
spreadheet is jxl/Write.java. This may be used as a starting point
for bespoke processing.
</p>
<p class="smallhead">
Copying Spreadsheets
</p>
<p>
JExcelApi may be used to copy and modify a spreadsheet. Included with
the JExcelApi is a spreadsheet called jxlrwtest.xls, which is hardcoded
into the demo program. If this spreadsheet is passed as a command line
argument to the demo, then a copy of this spreadsheet will be
generated, with the second sheet containing modified values.
<br />
<br />
DO NOT MODIFY THE DEMO SPREADSHEET otherwise the modification demo will
not work.
<br />
<br />
To run this demo, from the directory containing jxlrwtest.xls type
<br />
<br />
<a class="technical">
java -jar jxl.jar -rw jxlrwtest.xls myoutput.xls
</a>
<br />
<br />
This will generate an output spreadsheet called myoutput.xls. The
first sheet (called "original") is unchanged, but the second sheet
(called "modified" has had its cell contents changed, as indicated
by the labels.
<br />
<br />
The class for the modification demo is jxl/ReadWrite.java.
</p>
<p class="head">
Requirements
</p>
<p>
JExcelApi requires Java 2 JDK to run.
<br /><br />
When dealing with large spreadsheets, particularly when using the
copy functionality, it is recommended that users allocate sufficient
memory to the JVM using the -Xms and -Xmx options on the java command
line.
</p>
<p class="head">
Installation
</p>
<p>
JExcelApi comes packaged as a zipped tar file, called something like
jexcelapi_2_0.tar.gz. To unpack on UNIX systems, at the command
line type
<br /><br />
<a class="technical">
gunzip jexcelapi_2_0.tar.gz</a>
followed by
<br />
<a class="technical">
tar xf jexcelapi_2_0.tar
</a>
<br /><br />
On Linux systems this can be accomplished within the single command
<br /><br />
<a class="technical">
tar zxf jexcelapi_2_0.tar.gz
</a>
<br /><br />
On Windows/NT systems, the archive may be unpacked visually using a
utility such as Winzip.
<br /><br />
Whatever the unpacking process, the application will be placed in a
subdirectory called jexcelapi. The top level directory contains this
html page and the
pre-built jar file, jxl.jar.
The docs directory contains the javadoc documentation for the public
classes, the build directory contains the buildfile (requires
<a href="http://jakarta.apache.org/ant">ant</a>
) and the src directory
contains the source code for the java classes.
</p>
<p class="head">
Excel Versions
</p>
<p>
JExcelApi will read workbooks created in Excel 95, 97 and 2000, and
will generate workbooks that can be read by Excel 97 and later.
</p>
<p class="head">
Licensing
</p>
<p>
JExcelApi is issued on under the GNU Lesser General Public License. For
further information click
<a href="http://www.gnu.org/copyleft/lesser.html">here</a>.
</p>
<p class="head">
Further Notes
</p>
<p>
A <a href="tutorial.html">tutorial</a> is available for those who wish
guidance on how to use the API for reading, writing and copying
spreadsheets.
</p>
<p>
When writing out spreadsheets, JExcelApi has limited support for graphs
charts and macros during the copy process, but they cannot be created
via the API.
</p>
<p>
For further technical information, including how JExcelApi handles dates
and unicode characters, read the <a href="technotes.html">technical
notes</a>
</p>
<a href="download.html">Download JExcelApi</a>
<br /><br />
<a href="changehistory.html">Change History</a>
<br /><br />
<br /><br />
I endeavour to answer all emails, but it's taking up more and more
time. Before emailing me with a question please check the
<a href="tutorial.html">FAQ</a> first.
<br /><br />
Eric Jung has set up a <a class="smallhead">yahoo group</a>
<a href="http://groups.yahoo.com/group/JExcelApi">here</a>. As well as
providing a discussion forum I will also post a message to this group
whenever a new version of JExcelApi is released.
<br /><br />
Please check out these resources before emailing me - if
I can keep the amount of time spent answering emails to a reasonable level
then I can still expend effort on enhancing the software.
<br />
<a href="mailto:[email protected]">Contact me</a>
<br /><br />
Stefano has ported JExcelApi to .net. You can access the software <a href="http://nexcel.sourceforge.net">here</a>
<br /><br />
<p class="head">
Make a Donation
</p>
JExcelApi is free software and will remain so. If JExcelApi has been of
benefit to you or your company, perhaps you might like to make a
voluntary donation to JExcelApi using PayPal
<br /><br />
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="[email protected]">
<input type="hidden" name="item_name" value="JExcelApi">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="tax" value="0">
<input type="image" src="https://www.paypal.com/images/x-click-but21.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
</form>
<a href="/">Return to my home directory</a>
<p>
This site last updated 10th April, 2005
</p>
</body>
</html>