设为首页收藏本站
机战Z2破界篇 星组汉化 下载

星组游戏论坛

 找回密码
 注册(QQ注册+邀请注册)

QQ登录

只需一步,快速开始

查看: 968|回复: 3

[心得] 关于java乱码的总结 [复制链接]

Rank: 11Rank: 11Rank: 11Rank: 11

UID
98177
星币
23
积分
9
阅读权限
90
注册时间
2013-4-11
最后登录
2014-1-16
发表于 2013-6-9 21:32:02 |显示全部楼层
乱码问题一般都是编码方式不匹配的问题,总体解决的办法如下
: x' G5 W4 R2 l* R  w一、字符串编码的转换
; L: Z# e9 I  H5 T! d3 L    1、新字符串=new String(旧字符串.getByte("编码1"),"编码2");+ g$ ?& Y3 p6 s1 T$ F3 W
    2、编码1为旧字符串的编码方式,编码2为新字符串编码方式
6 g3 @% q6 O) @% W二、java-Socket接受中文乱码的解决. S' }' a. f4 r- R! K! U3 R5 P
    在服务端默认的编码情况下,JAVA的SOCKET接收需要GBK编码,而C#的接收需要UTF-8编码。
* x9 `) ]9 z0 j2 g: t. j    当然也可以约定服务器端和客户使用相同的编码。% g  `' n! ]" f, q5 N, \- [( t
    1、客户端发送: / |9 K  X  G+ M  M/ z+ }+ e
       PrintWriter pw =new PrintWriter(socket.getOutputStream());: p% F8 q- k- T# ^0 W( T2 k! g
       pw.println("数据");  //这个数据可以转换成指定编码 , {( @. K; R! H9 p( U" y1 w% J
       pw.flush();
/ x7 M5 m1 v# C# W. |    2、服务器端接收* {  @3 i8 ?. k* ?0 r. `8 d
      BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream(),"编码")); //这个编码要和客户端的编码相同' l; q& s* B% v' `1 V
      br这个流就可以随便用了' J) |  a+ r+ P# x, X) d' S
    3、也可以这样约定
) U2 l; Y; b9 i4 |9 I       接收端:in = new BufferedReader(new InputStreamReader(socket.getInputStream(),"UTF-8"));/ y! x: p* w3 @3 @$ ?
       发送端:out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(),"UTF-8"));  
0 J+ e; c: _5 S/ n* D, `( b4 z7 A三、常用的编码方式
7 b+ S' U1 ~2 U: x    1、UTF-8:汉字3字节,英文字母1字节,特殊字符2字节
" m0 ]" x8 G4 G) |  J$ Q$ M# d% a    2、GBK:汉字2字节,英文和数字1字节
) V: \6 [5 a5 m    3、unicode:统一连个字节
; T* K9 m, v. s- z4 F' h3 d0 {8 [    4、iso8859-1:只支持英文,一个字节/ L7 W4 Q+ L. }+ m! i4 S# D
    更详细的编码介绍参照http://www.cnblogs.com/lxzh/archive/2012/05/30/2526557.html
1 G% U4 P1 K! S( V- a$ j( K7 _

Rank: 4

UID
115225
星币
59
积分
348
阅读权限
40
注册时间
2016-7-25
最后登录
2017-10-24
发表于 2017-6-12 18:40:54 |显示全部楼层
这么好的帖子不顶就太对不起楼主了% G, c0 b8 _* e0 f, _$ k; W* B
" U- Q' f/ O; I1 L
+ j4 U; q+ `' b9 A; O) |5 B) e; O2 \

: B* H% L5 y+ V, r# q! r- d
1 j! d' x" M. @7 c8 c2 s
, O* l2 f+ n8 B6 P
# o+ j! T4 g! w" ?8 P7 m1 f9 @; O2 W7 |
' w5 {9 l# w9 i: Z! ]9 c- t9 O

# {* A6 a, ]4 [( e* M- l4 E+ r/ }" V% A2 H1 r) B
% M/ F, a4 L+ f' F1 v6 ^/ V8 i

, U+ p5 m: _0 b" Q4 z广西葛根茶 网狼特产 广西网狼葛根茶 网狼葛根茶 广西特产葛根茶

Rank: 4

UID
115225
星币
59
积分
348
阅读权限
40
注册时间
2016-7-25
最后登录
2017-10-24
发表于 2017-9-27 15:11:58 |显示全部楼层
我也想了解,请大家都说说
% [3 r3 W0 p1 ]1 q. h  {6 k6 y
% l; R% ~" q: q/ @/ I, B. }
- V' u6 g2 b! }7 n, x- k% A5 R* ]$ K) U
* G) [# k6 o( Q

5 K  ?6 b( B# U* M
0 P3 ^4 U; l) X: c7 e4 K* s& L/ V" J/ f
9 U# A) Y% E8 |$ W6 ~; y$ K) k
5 V7 a) C/ Y& `, Y
7 i: f7 i: n( w% ?3 `% X: o' f8 z: H( q
7 a+ K* f! ?& \4 ~# E1 c% Z1 E

) O# \; w! L) G6 F; i葛根茶批发 网狼葛根茶 广西葛根茶 广西葛根茶批发 葛根茶价格

Rank: 4

UID
115225
星币
59
积分
348
阅读权限
40
注册时间
2016-7-25
最后登录
2017-10-24
发表于 2017-10-21 16:15:48 |显示全部楼层
谢谢楼主!!!!' _5 @2 H9 ^8 ^$ \) H
7 u- J, ]* _) M
2 e# }) b6 Y9 N

- s/ [( u, r! ?  r( w5 V7 @8 `% i8 O% u( E0 W

/ ?- N6 d& w1 x6 I5 e9 x$ Z
: q) i7 {9 c0 G# ]4 ~$ [3 y, W) n- F7 p( Q) f& z- r$ J( s% }

4 ]: h: M3 J# ^- h1 W5 p
) Z4 ]- f! f% d  e; l0 U5 v
2 T# P( ?6 e; ^: R7 X$ C) K8 B; u+ V: g2 i* }7 T0 [
2 H9 @# @/ j' O( E8 V7 A/ v8 c
古龙大红八角 古龙八角 大红八角

Archiver|星组游戏论坛 ( 京公网安备110403080002 )  

GMT+8, 2019-2-22 20:28

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部