On Thu, 2002-03-14 at 12:15, Lo�c Lef�vre wrote:
> Of course :)
> I mean by "write process", what part of code is executed
> when invoking the HSSFWorkBook.write( output ).
> 
> The principle of i18n is a part of source code that
> resides between two other parts of code.
> 
> I explain ;)
> 
> Let's say now, the "write process" is as follow:
> 
> -1- a = getHSSFCellValue()
> -2- write( a )
> 
> Then to internationalize it, we'll have to do something like that:
> -1- a = getHSSFCellValue()
> -2- write( i18n( a ) )
> 
> according to the type of a, to the format selected for a and
> some other parameters (initialisation) like the country, the languages...
> 
> In fact, I would like to know where should I look "to code something
> between" :D
> 

Okay its not that simple.  HSSF isn't like a webapp.  You cant just say
"internationalize" this or "convert this to unicode" etc.  You see, we
have to write in Excel's version of internationalized so you need to
understand Excel file format.  

The best place to start is to go to Amazon.com and order the Excel 97
Developer's kit, its out of print but still available for cheap.  It
documents the file format.

There are some things it doesn't document. So there may be different
binary low level structures to set or values to set in those structures
based on the locality.  Some you'll have to guess at or do by diffing
the output of two files.  

see: org.apache.poi.hssf.dev.BiffViewer 
(utility to view the low level binary structures)

Also see this document:

http://sc.openoffice.org/excelfileformat.pdf

its not complete (we're helping write it) but it can give you an idea of
what we're up against.



> My english is absolutely ugly ^_^;
> 

Well my Spanish and German are worse and my French is non-existent so no
complaints from me :-)

> (continue...)
> 
> > -----Message d'origine-----
> > De : acoliver [mailto:[EMAIL PROTECTED]]
> > Envoy� : jeudi 14 mars 2002 17:49
> > � : [EMAIL PROTECTED]
> > Objet : Re: Write process...
> >
> >
> > >On Thu, 14 Mar 2002 17:26:04  0100 =?iso-8859-1?B?TG/vYyBMZWbodnJl?=
> > <[EMAIL PROTECTED]> wrote.
> >
> > There are sample XLS files in the repository:
> >
> >
> http://cvs.apache.org/viewcvs/jakarta-poi/src/testcases/org/apache/poi/hssf/
> data/
> >
> > So far as I know these are all US/UK/AU version creations.  (Note that all
> > English offshoot cultures have roughly the same version of Excel from what
> > I've read -- basically if the country in question speaks English and was
> > once part of the British Empire, its got the same version -- this is
> > essentially the version the Excel 97 Dev kit primarily focuses on though
> it
> > mentions some i18n concerns).
> >
> > Explain what you mean by "write process"
> >
> > HSSF is organized into 4 seperate parts (in essence)
> >
> > 1. usermodel.  This is to HSSF what DOM is to XML.
> > 2. eventapi.  This is to HSSF what SAX is to XML
> > 3. records.  These are the low level binary structures
> 
> Okay
> 
> > 4. model.  These are the *grammar* for the records, these pull together
> the
> > low level binary structures into something meaningful (think of the
> records
> > as words and the model as the grammar)
> 
> Okay (I have studied lex, yacc and their equivalent for the Java language)
> 
> >
> > the event API uses only the records and is *read only*.
> >
> > The usermodel uses the model and to a lesser extent the records to map to
> > high level structures.
> >
> > when you say "write process"? I'm not sure what you're asking, can you be
> > more specific?
> 
-- 
http://www.superlinksoftware.com
http://jakarta.apache.org/poi - port of Excel/Word/OLE 2 Compound
Document 
                            format to java
http://developer.java.sun.com/developer/bugParade/bugs/4487555.html 
                        - fix java generics!
The avalanche has already started. It is too late for the pebbles to
vote.
-Ambassador Kosh

Reply via email to