84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
s按照gbk解码,在按照gbk组合成String,为什么就不是乱码了呢? 那2这个字符串是最终是什么编码 utf-8还是gbk
学习是最好的投资!
1: s.getBytes() がパラメーターを取らない場合、jdk のデフォルトのエンコーディング (utf-8 の可能性があります) を呼び出して文字列を byte[] にデコードし、gbk エンコーディング メソッドを使用して再エンコードします。 byte[]をStringに入力すると文字化けが発生します。
2.s.getBytes('gbk') gbkメソッドに従って文字列をデコードし、gbkメソッドを使用して再エンコードするので、文字化けはありません。
上で述べたことは正しいです。jdk のデフォルトのエンコーディングは file.encoding で指定されたエンコーディングであることを付け加えておきます。Dfile.encoding を通じて JVM のデフォルトのエンコーディングを変更できます。 =GBK コーディング。 file.encoding中指定的编码,可以通过Dfile.encoding=GBK这样来修改JVM的默认编码。
file.encoding
Dfile.encoding を通じて JVM のデフォルトのエンコーディングを変更できます。 =GBK
Dfile.encoding=GBK
再补充一点编解码的知识,“你好”这个中文要在计算机中传输,必然要把它转换为2进制。怎么转二进制就是这里说的解码。编码的方式有很多种,比如Unicode字符集。这个字符集里面就是各种符号对应的数字,比如你用2345来表示,然后按照一定的方式转换的二进制(具体怎么转换可以网上找一下具体过程)。接收到这一串二进制数,怎么转为汉字就是这里说的编码。编码需要按照一定的方式去解才能得到正确的字符对应关系,比如你的二进制为0101010010,需要按照utf-8的方式去编码才能得到你
Unicode
你
0101010010
you
You
1: s.getBytes() がパラメーターを取らない場合、jdk のデフォルトのエンコーディング (utf-8 の可能性があります) を呼び出して文字列を byte[] にデコードし、gbk エンコーディング メソッドを使用して再エンコードします。 byte[]をStringに入力すると文字化けが発生します。
2.s.getBytes('gbk') gbkメソッドに従って文字列をデコードし、gbkメソッドを使用して再エンコードするので、文字化けはありません。
上で述べたことは正しいです。jdk のデフォルトのエンコーディングは
file.encoding
で指定されたエンコーディングであることを付け加えておきます。Dfile.encoding を通じて JVM のデフォルトのエンコーディングを変更できます。 =GBK
コーディング。file.encoding
中指定的编码,可以通过Dfile.encoding=GBK
这样来修改JVM的默认编码。再补充一点编解码的知识,“你好”这个中文要在计算机中传输,必然要把它转换为2进制。怎么转二进制就是这里说的解码。
コーディングとデコーディングの知識を追加すると、漢字「こんにちは」をコンピューターに送信する場合は、バイナリに変換する必要があります。バイナリに変換する方法がここで言うデコードです。编码的方式有很多种,比如
Unicode
字符集。这个字符集里面就是各种符号对应的数字,比如你
用2345来表示,然后按照一定的方式转换的二进制(具体怎么转换可以网上找一下具体过程)。接收到这一串二进制数,怎么转为汉字就是这里说的编码。编码需要按照一定的方式去解才能得到正确的字符对应关系,比如
你
的二进制为0101010010
,需要按照utf-8的方式去编码才能得到你
Unicode
文字セットなど、多くのエンコード方式があります。この文字セットには、さまざまな記号に対応する数字が含まれています。たとえば、you
は 2345 で表され、その後、特定の方法でバイナリに変換されます (特定の変換方法については、オンラインで特定のプロセスを見つけることができます)。この二進数の文字列を受け取った後、それをどのように漢字に変換するかが、 ここで言うエンコードです。正しい文字対応を取得するには、エンコードを特定の方法で解決する必要があります。たとえば、
you
のバイナリは0101010010
であり、utf に従ってエンコードする必要があります。 -8 を使用すると、このシンボルをYou
取得して表示します。 🎜