From: SourceForge.net <no...@so...> - 2009-12-31 04:58:44
|
Bugs item #2381509, was opened at 2008-12-03 15:52 Message generated for change (Comment added) made by k_satoda You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100588&aid=2381509&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: editor core >Group: minor bug >Status: Open >Resolution: None Priority: 5 Private: No Submitted By: Suresh Mani (smani2000) >Assigned to: Nobody/Anonymous (nobody) Summary: Character encoding error doesn't report line number Initial Comment: Dear JEdit Developers, I would like to report an issue in the world's best editor. When I load a file which has a character encoding issue, I get an I/O Error dialog box that shows the following message: "The following I/O operation could not be completed: c:\temp\test.txt The file could not be loaded correctly (some data might be lost) with encoding "Cp1252". (java.nio.charset.UnmappableCharacterException: Input length = 1) Try selecting a different encoding. It can be selected with the menu File->Reload with Encoding. If you want it to be done automatically, add the candidates into "List of fallback encodings" in Encodings pane of Global Options. But if I open my file "text.txt" that has a character encoding problem in a different editor like plain and simple windows notepad.exe, - the do "Select All" - copy the entire contents of the file to clipboard - then open a new file in JEdit - then paste the contents of the clipboard in JEdit - do save as in JEdit - try saving it as c:\temp\test2.txt - JEdit throws the following error: The following I/O operation could not be completed: c:\temp\test2.txt Cannot save: java.nio.CharacterConversionException: Failed to encode the character 'some_junk_character_is_shown' (U+FFFD) at column 85 in line 456 with the encoding "Cp1252". Do you see the difference? When opening a file that has a character encoding issue, JEdit does not show the line and column numbers. But when you try to do a "save as" on a file that has a character encoding issue, JEdit actually tells you the line and column number that contain the problematic character. I would really appreciate if you could make JEdit point out the line and column numbers of problematic characters while loading files (that have such character encoding issues). Thanks a million Suresh ---------------------------------------------------------------------- >Comment By: Kazutoshi Satoda (k_satoda) Date: 2009-12-31 13:58 Message: The error constantly happens when loading a file with an incorrect encoding. It is expected behavior therefore not the problem. The problem is that the error doesn't report line number, as the summary says. ---------------------------------------------------------------------- Comment By: Alan Ezust (ezust) Date: 2009-12-30 18:28 Message: I haven't seen this error in a long time. I think it is already fixed. Let us know if it comes up again. ---------------------------------------------------------------------- Comment By: Kazutoshi Satoda (k_satoda) Date: 2008-12-06 10:34 Message: One workaround is to search for U+FFFD manually after a file is loaded with error. It can be done by using regex-search with "\uFFFD". But this is not a perfect solution because U+FFFD can be loaded from a file which was saved in UTF-x. FYI, please see the following links for U+FFFD. http://en.wikipedia.org/wiki/Replacement_character http://java.sun.com/j2se/1.5.0/docs/api/java/nio/charset/CharsetDecoder.html It could be implemented if there was a way, which I couldn't find, to know how many characters were correctly decoded in Reader#read() method before throwing the exception. Writer.write() has the same issue, but I could implement the indication for saving with a simple loop because the source information is in our hand, not in a external stream and hidden buffers. http://jedit.svn.sourceforge.net/jedit/?rev=9494&view=rev ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100588&aid=2381509&group_id=588 |