当前位置: 技术问答>java相关
如何把Content-Type: application/octet-stream的"=?gb2312?B?seCzzMu8z+u1xNPW0ru0zrjvw/w=?="转化为中文.
来源: 互联网 发布时间:2015-02-11
本文导语: =?gb2312?B?seCzzMu8z+u1xNPW0ru0zrjvw/w=?= 是一个中文字符的octet-stream值 | import com.sun.mail.util.*; public static String decodeWord(String s) { if(!s.startsWith("=?")) return s; int i = 2;...
=?gb2312?B?seCzzMu8z+u1xNPW0ru0zrjvw/w=?=
是一个中文字符的octet-stream值
|
import com.sun.mail.util.*;
public static String decodeWord(String s)
{
if(!s.startsWith("=?"))
return s;
int i = 2;
int j;
if((j = s.indexOf(63, i)) == -1)
return s;
String s1 = (s.substring(i, j));
i = j + 1;
if((j = s.indexOf(63, i)) == -1)
return s;
String s2 = s.substring(i, j);
i = j + 1;
if((j = s.indexOf("?=", i)) == -1)
return s;
String s3 = s.substring(i, j);
try
{
ByteArrayInputStream bytearrayinputstream = new ByteArrayInputStream(s3.getBytes());
Object obj;
if(s2.equalsIgnoreCase("B"))
obj = new BASE64DecoderStream(bytearrayinputstream);
else
if(s2.equalsIgnoreCase("Q"))
obj = new QDecoderStream(bytearrayinputstream);
else
return s;
int k = bytearrayinputstream.available();
byte abyte0[] = new byte[k];
k = ((InputStream) (obj)).read(abyte0, 0, k);
return new String(abyte0, 0, k );
}
catch(Exception ex)
{
return s;
}
}
:需下载一个javaMail
下载网址:java.sun.com
public static String decodeWord(String s)
{
if(!s.startsWith("=?"))
return s;
int i = 2;
int j;
if((j = s.indexOf(63, i)) == -1)
return s;
String s1 = (s.substring(i, j));
i = j + 1;
if((j = s.indexOf(63, i)) == -1)
return s;
String s2 = s.substring(i, j);
i = j + 1;
if((j = s.indexOf("?=", i)) == -1)
return s;
String s3 = s.substring(i, j);
try
{
ByteArrayInputStream bytearrayinputstream = new ByteArrayInputStream(s3.getBytes());
Object obj;
if(s2.equalsIgnoreCase("B"))
obj = new BASE64DecoderStream(bytearrayinputstream);
else
if(s2.equalsIgnoreCase("Q"))
obj = new QDecoderStream(bytearrayinputstream);
else
return s;
int k = bytearrayinputstream.available();
byte abyte0[] = new byte[k];
k = ((InputStream) (obj)).read(abyte0, 0, k);
return new String(abyte0, 0, k );
}
catch(Exception ex)
{
return s;
}
}
:需下载一个javaMail
下载网址:java.sun.com
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。