String 如何将char[]转换为UTF8以避免JNI中的非法连续字节错误
使用JNI,我将值从文件传递到java。 但是,有时会发生此错误/警告:String 如何将char[]转换为UTF8以避免JNI中的非法连续字节错误,string,encoding,utf-8,java-native-interface,bytearray,String,Encoding,Utf 8,Java Native Interface,Bytearray,使用JNI,我将值从文件传递到java。 但是,有时会发生此错误/警告: JNI WARNING: illegal continuation byte 0xc0 string: '���������������������' in Lcom/package/project/parser;.getSong (Lcom/package/project/vo/songVo;Ljava/lang/String;)I (NewStringUTF) 我
JNI WARNING: illegal continuation byte 0xc0
string: '���������������������'
in Lcom/package/project/parser;.getSong (Lcom/package/project/vo/songVo;Ljava/lang/String;)I (NewStringUTF)
我已经读到一些实例,获取的字符串不在UTF8中,如果是这样,我如何将解析的char[]转换并传递给string以避免再次出现此错误/警告?这是因为您的char[]不是有效的modified-UTF8,请检查此项
这是因为您的字符[]不是有效的Modified-utf8,请检查此项
您知道数据的实际编码是什么吗?文件可能有不同的编码,最好是这样,因为我正在解析来自不同来源的文件,所以可能有特殊字符等等。。。我读过这个(),但是如何“首先将这个字符串转换为UTF8(也称为“多字节”),然后调用NewStringUTF()”?所以它可以是任何编码,而您实际上并不知道它?您需要将该数据作为
字符串处理吗?是的,Jstring然后将其作为字符串添加到对象类中。现在我像这样传递Jstring:(*env)->SetObjectField(env,allValues,fieldTitle,(*env)->NewStringUTF(env,song->header->title))@IsisBlack让我们知道数据实际上是哪种编码?文件可能有不同的编码,最好是这样,因为我正在解析来自不同来源的文件,所以它可能有特殊字符,等等。。。我读过这个(),但是如何“首先将这个字符串转换为UTF8(也称为“多字节”),然后调用NewStringUTF()”?所以它可以是任何编码,而您实际上并不知道它?您需要将该数据作为字符串处理吗?是的,Jstring然后将其作为字符串添加到对象类中。现在我像这样传递Jstring:(*env)->SetObjectField(env,allValues,fieldTitle,(*env)->NewStringUTF(env,song->header->title))@伊西斯布莱克让我们