Link to home
Start Free TrialLog in
Avatar of trouvain
trouvain

asked on

Export queries as excel files

Hi,

I'm generating dynamic html sites which represent content of a specific database. The next step is to perform a possibility to download such a report as excel (5.0) format.
Does anyone knows whether there exists already such a filter in any java class and where to get it? I would also be grateful for the accurate description of the composition of an excel spreadsheet file (including header, ...).
Thanks in advance
Avatar of jhance
jhance

I'm not aware of any Java class that write directly to the Excel 5.0 file format.  I'd recommend a different approach, however.  The problem with using a direct to Excel approach is that you are then dependent upon the version of Excel that is installed on the computer and you never know if/when MS will change the file format.  They don't guarantee that it will remain constant.  The .csv format, howver, it widely used and is very easy to both create from another program and use in another non-Excel program.  You might want to consider just dumping your data to a csv file which can be opened by Excel without any special processing.  In other words, Excel know how to deal with a csv file by default.
Avatar of trouvain

ASKER

This answer was very poor indeed. Firstly I asked for the excel save format for my reasons. At the other hand I didn't found any description of the .csv format.
The best option is to output your data as columns, tab or comma separated. This is easy Java programming and such files are exportable to Excell (all versions!), MS Access (all versions!), and all similar spreadsheet or database, even not from Microsoft!

Example:

Save this in test.txt:

Column1,Column2
Data1,Data2

Open Excell, go to "File|Open...", select test.txt. Excell will prompt a wizard for exporting the file to the spreadsheet!
Sorry,
but this is also too poor for 200 points. I have to provide a more convenient way for my clients to load spreadsheet. I can't tell them to handle import wizards and so on.
If you use tabs, it is only click "Finish" on the wizard panel automatically poped up when trying to open the file. Difficult, indeed!
The only alternative I can think of, would be to use a JDBC-ODBC bridge on the server side.

In this fashion, you could populate an Excel file via ODBC calls, you would then need a signed JNI class to actualy write (or copy) the contents to your clients box. (Or FTP as an alternative).
trouvain, in my previous answer, simply turn test.txt into test.csv and this time no wizard is needed to export the data to the spreadsheet.
I don't see any progress in these answers. But I have one remark for fontaine:
Perhaps you should have mentioned the quoting. I've found it somewhere else.
ASKER CERTIFIED SOLUTION
Avatar of fontaine
fontaine

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
And in case one item should include a comma, simply double quote it.

Example:

aaa,bbb,"ccc,ddd" -> 3 colums in Excell, the last being ccc,ddd
If the item contrains a double quote, double it:

Example:

aaa,bbb,"ccc,d""dd" -> 3 colums in Excell, the last being ccc,d"dd
Do you wanna kidding me? I said I've found the solution for the quoting problem. But it doesn't matter if you test your answers. It seems to me that nobody is able to answer the core question. Since I found no F-Button I'm going to make you a gift with 200 points in it!
Trouvain, if you had taken a look at the section about questions waiting to be graded, you would have seen that I am currently answering to 1 question on 4 on this site! Experts have no money for answering the questions, only the pleasure to help someone else. If you have no respect for this, don't be astonish if you have no more help!