javabase64解碼編碼
❶ 在java中如何進行BASE64編碼和解碼
importsun.misc.BASE64Encoder;
importsun.misc.BASE64Decoder;
//將s進行BASE64編碼
publicstaticStringgetBASE64(Strings){
if(s==null)returnnull;
return(newsun.misc.BASE64Encoder()).encode(s.getBytes());
}
//將BASE64編碼的字元串s進行解碼
(Strings){
if(s==null)returnnull;
BASE64Decoderdecoder=newBASE64Decoder();
try{
byte[]b=decoder.decodeBuffer(s);
returnnewString(b);
}catch(Exceptione){
returnnull;
}
}
❷ 怎麼用JAVA對一個文件進行base64編碼
JAVA對一個文件進行base64編碼
importsun.misc.BASE64Encoder;
importsun.misc.BASE64Decoder;
//將s進行BASE64編碼
publicstaticStringgetBASE64(Strings){
if(s==null)returnnull;
return(newsun.misc.BASE64Encoder()).encode(s.getBytes());
}
//將BASE64編碼的字元串s進行解碼
(Strings){
if(s==null)returnnull;
BASE64Decoderdecoder=newBASE64Decoder();
try{
byte[]b=decoder.decodeBuffer(s);
returnnewString(b);
}catch(Exceptione){
returnnull;
}
}
❸ C#如何將java標准base64編碼解碼為UTF-8編碼
staticvoidMain(string[]args)
{
stringinput="input";
byte[]bytesIn=Encoding.UTF8.GetBytes(input);
strings64In=Convert.ToBase64String(bytesIn);
//s64In相當於java傳過來的字元串
byte[]bytesOut=Convert.FromBase64String(s64In);
stringoutput=Encoding.UTF8.GetString(bytesOut);
Console.WriteLine(output);//==input
Console.ReadLine();
}
❹ Java Base64加碼解碼 Base64.encodeBase64 ( ) 和 new BASE64Enccoder( ).encode( )區別
Base64.encodeBase64 ( ) 可以處理換行符,
new BASE64Enccoder( ).encode( )需要單獨處理換行符。
在linux/windows下,推薦使用第一種,不用自己單獨處理換行。
❺ java base64 編碼什麼用
base64可以用來將binary的位元組序列數據編碼成ASCII字元序列構成的文本。使用時,在傳輸編碼方式中指定base64。使用的字元包括大小寫字母各26個,加上10個數字,和加號「+」,斜杠「/」,一共64個字元,等號「=」用來作為後綴用途。
❻ 在java Base64編碼數據解碼問題,怎麼解決
import sun.misc.BASE64Encoder; import sun.misc.BASE64Decoder; // 將 s 進行 BASE64 編碼 public static String getBASE64(String s) { if (s == null) return null; return (new sun.misc.BASE64Encoder()).encode( s.getBytes() ); } // 將 BASE64 編碼的字元串 s 進行解碼 public static String getFromBASE64(String s) { if (s == null) return null; BASE64Decoder decoder = new BASE64Decoder(); try { byte[] b = decoder.decodeBuffer(s); return new String(b); } catch (Exception e) { return null; } }
❼ java base64解碼 怎麼是亂碼呢
會亂碼的原因是你的編碼不一致導致的
php中的urlencode的編碼是和系統編碼一致的(比如windows默認gb2312,ubuntu默認utf-8)
所以首先需要確定你的系統編碼,之後根據得到的系統編碼在調用java的decode方法的時候,將這個編碼傳入(考慮到你的例子中有繁體字,所以,建議你使用utf-8編碼),以下是我使用utf-8編碼的例子(php環境是ubuntun下)
❽ java:關於base64編碼求解
首先base64是對位元組碼進行再次編碼,所以要先把你這個字元轉成二進行碼(不過對於英文字母來說,轉成的二進制碼都是一樣的,就沒關系了)。'a'對應的二進制碼為01000001(65),而base64是每6位編成一個字元(base64字元),則把此二進制碼分成2段,第一段是010000,第二段是01(0000不足位補0),這兩個不是一樣的嗎,值為16,對應第17個大寫字母(0對應A),那自然是兩個Q了,而base64編碼至少編出4個字元(因為給3個字元來編碼,一個6位,3個24位,6位一編碼,正好編出4個,反過來自然是4個解碼成3個)。另外這個編碼過程本來就是它的原理,原理圖如下,只要明白了原理才知道倒底怎麼編。