String Parameters
Next, we want to consider how to transfer strings to and from native methods. As you know, strings in the Java programming language are sequences of UTF-16 code points whereas C strings are null-terminated sequences of bytes, so strings are quite different in the two languages. The Java Native Interface has two sets of functions for manipulating strings, one that converts Java strings to “modified UTF-8” byte sequences and one that converts them to arrays of UTF-16 values, that is, to jchar arrays. (The UTF-8, “modified UTF-8”, and UTF-16 formats were discussed in Volume 1, Chapter 12. Recall that the “modified UTF-8” encoding leaves ASCII characters unchanged, but all other Unicode characters are encoded as multibyte sequences.) ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access