You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by bu...@apache.org on 2008/05/11 20:45:49 UTC

DO NOT REPLY [Bug 44967] Problem with unicode characters in functionMetatada.txt

https://issues.apache.org/bugzilla/show_bug.cgi?id=44967


Josh Micich <jo...@gildedtree.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |NEEDINFO
            Summary|Exception when reading      |Problem with unicode
                   |SharedFormulaRecord         |characters in
                   |                            |functionMetatada.txt




--- Comment #3 from Josh Micich <jo...@gildedtree.com>  2008-05-11 11:45:48 PST ---
These problems started with the second fix to bug 44675 (svn r652994), when
FunctionMetadataReader began to read more of the columns from
functionMetadata.txt.

Originally, that file had non-ascii characters in it (ndash and ellipsis) which
I thought I had handled correctly.  Nick found a bug almost identical to this
(on linux), and applied a fix (svn r653831).  However, the fix didn't work for
me (on win32).  At this point, I thought the best solution was to totally
eliminate all non-ascii characters from functionMetadata.txt, and that's what I
did in svn r653892.

I can see from your stack trace that you have the latest
FunctionMetadataReader.  However, I don't understand why character 0xFFFD is
being read from functionMetadata.txt.  From what I can tell, there are only
ascii characters in functionMetadata.txt as of r653892.  I just ran the
following code in my workspace:

InputStream is =
FunctionMetadataRegistry.class.getResourceAsStream("functionMetadata.txt");
while (true) {
        int ic = is.read();
        if(ic ==-1) {
                break;
        }
        if(ic<'!' || ic > 'z') {
                switch (ic) {
                        case '\n': case '\r': case '\t': case ' ':
                                continue;
                }
                System.out.println("Unexpected char (" + ic + "):" + (char)ic);
        }
}
is.close();

In my workspace there are no unexpected chars.  Maybe you could run try the
same to help diagnose the problem.


BTW - This bug is not specific to shared formulas.  Reading any xls that
involves a formula will hit FunctionMetadataRegistry.getInstance().  Almost 100
junits were broken by this bug. The most direct test case to hit this bug is in
TestFunctionMetadataRegistry.


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org