I am working on a bug where a CJK character is displayed wrongly. I am testing using a simple programme in Eclipse and while debugging 'Variables' section of debugger displays one CJK character wrongly. See the screenshot below. I just assigned "野家xyz" value to a variable and eclipse debugger is displaying it wrongly. Character '', which is a surrogate pair, is replaced with a square. But when I printed it using sysout, it is displayed correctly. Default charset used is 'UTF-8' as you can see from the first line printed in the console. Can someone help me to understand why eclipse is showing it wrongly ?
Eclipse debugger showing cjk character wrongly - Java
293 Views Asked by Sreejith Veluvil AtThere are 2 best solutions below
Till Brychcy
On
The character "" is what Unicode calls a supplementary character with codepoint U+20BB7 and its UTF-8 encoding is F0 A0 AE B7.
Support for such characters has only been added to Java in Version 1.5 by JSR 204, but the code in Eclipse's jdt.debug that reads Strings in UTF-8 format is older than that.
If you look at the implementation of org.eclipse.jdi.internal.jdwp.JdwpString.read(DataInputStream), you can see that is was never updated to handle supplementary characters (which have four byte sequences starting with 0xF*).
It just checks that the upper nibble of the first byte is >= 14 (0xE), effectively interpreting the character's UTF-8 sequence as E0 A0 AE B7 which corresponds to the sequence U+082E U+00B7. U+082E is not a valid unicode character which is why the rectangle is drawn for it.
If you want to report this issue, the bug tracker for this Eclipse component is here.
Related Questions in JAVA
- I need the BIRT.war that is compatible with Java 17 and Tomcat 10
- Creating global Class holder
- No method found for class java.lang.String in Kafka
- Issue edit a jtable with a pictures
- getting error when trying to launch kotlin jar file that use supabase "java.lang.NoClassDefFoundError"
- Does the && (logical AND) operator have a higher precedence than || (logical OR) operator in Java?
- Mixed color rendering in a JTable
- HTTPS configuration in Spring Boot, server returning timeout
- How to use Layout to create textfields which dont increase in size?
- Function for making the code wait in javafx
- How to create beans of the same class for multiple template parameters in Spring
- How could you print a specific String from an array with the values of an array from a double array on the same line, using iteration to print all?
- org.telegram.telegrambots.meta.exceptions.TelegramApiException: Bot token and username can't be empty
- Accessing Secret Variables in Classic Pipelines through Java app in Azure DevOps
- Postgres && statement Error in Mybatis Mapper?
Related Questions in ECLIPSE
- I need the BIRT.war that is compatible with Java 17 and Tomcat 10
- GUI window is not appearing
- I am trying to run java application in Eclipse, When I try to do Run > Run as > Java Application it starts to show little processing but nothing happe
- Migrating Google App Engine - Eclipse Java 8
- Unable to compile the class for JSP in tomcat 8.5.95
- Eclipse + CMake: Eclipse index unable to resolve header files
- Commit Each Change from Eclipse to GitHub as a different Branch
- Using Eclipse Maven project, import new version of a class from a jar file created from another Maven project
- Is the Eclipse RCP "Window > Show View" menu predefined somewhere
- To enable syntax highlighting with color for JBehave stories in Eclipse
- Eclipse: "package...does not exist" when building a Maven package that references a class in another project
- TestNG update related issue
- How to print a value by comparing 2 fields inside JSON - RestAssured
- How to build using Eclipse Tycho
- "Cannot be resolved as a type" problem with Java
Related Questions in UNICODE
- Question about unicode assignments in python
- Can't we make a better variable-length character encoding with just using the 1 bit extra in the 7 bit ASCII?
- UTF-8 string has too many bytes using SBCL and babel on Windows 64 bits
- how to implement ZWJ and NZWJ in fontlab
- charAt() on HTML entities
- NCURSESW - Unable to use addwstr function to print out unicode characters outside of standard ASCII
- pdftk unicode works in preview but not adobe acrobat
- How to store metadata for a UTF-8 text file cross-platform?
- Is there a 'bottom-to-top' equivalent of the unicode 'rtl override'?
- pdftk generated pdf does not render correct utf-8
- How do I add a bullet point before a line of text in ZPL on a Zebra ZD500R?
- Visual C++ - how can I turn a unicode character into char or string?
- Getting error 'Some bytes have been replaced with the Unicode substitution character while loading file ... with Unicode (UTF-8)"
- French special characters unicode required for first name
- How to use HTML5 input pattern attribute to validate Latin and extended Latin characters only
Related Questions in UTF-8
- Can't we make a better variable-length character encoding with just using the 1 bit extra in the 7 bit ASCII?
- UTF-8 issue with excel
- UTF-8 string has too many bytes using SBCL and babel on Windows 64 bits
- How to convert from Java ASCII properties to UTF8 (Java 9) properties
- How to read a file that contains both ANSI and UTF-8 encoded characters
- BSONError in MongoDB Compass
- Create HMAC SHA-1 in JS with byte array
- pdftk unicode works in preview but not adobe acrobat
- xml file from ISO-8859-2 to UTF-8 in python
- How to store metadata for a UTF-8 text file cross-platform?
- Encoding problem on MySQL: Why some non-ASCII characters get encoded on more than 4 bytes?
- How to get character position in a text file encode in UTF-8 in C?
- Unicode character ſ is matched as itself and as 's.'
- VS Code integrated terminal UTF-8 input problem
- pdftk generated pdf does not render correct utf-8
Related Questions in SUPPLEMENTARY
- Adding supplementary (passive) species post-hoc to a CCA ordination by projection
- Header section not displaying in collectionview programmatically
- Eclipse debugger showing cjk character wrongly - Java
- Java RegEx matcher breaks characters outside the BMP
- Update CollectionView supplementaryView header when off screen
- How to replace all non-supplementary chars, but leave all supplementary as is?
- SQL Query Where Column = '' returning Emoji characters and
- Map supplementary Unicode characters to BMP (if possible)
- Are supplementary characters allowed in XML names?
- mysql server replaces supplementary Unicode characters with a question mark (?)
- Supplementary character support in Java web application with Mysql
- how to print a glyph of supplementary characters in java onto my JTextField when i just click the button
- ODBC crashed while inserting supplementary characters via MySql
- ODBC connector support for utf8mb4 in MYSQL
- UICollectionView SupplementaryView Add UIButton to Footer
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?

Looks like this is a bug in Eclipse IDE, Variables window.
I have added a detail formatter to get the unicode entities for the text "野家xyz". Then decoded the returned unicode entities to unicode text using an online tool. Here's the outputs I got.
Detail Formatter Code
Detail Formatter Output
Screenshots
I used this online unicode converter to check the result.
Looks like the data in the variable still corresponds to the correct text, but the IDE can't render it. So I think this should be a bug in Eclipse.