中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
BASE64工具類
byte[]轉(zhuǎn)成String的時候,請用BASE64來轉(zhuǎn)碼,否則會因?yàn)樽址D(zhuǎn)換問題(不是所有的byte組合都能映射為char),導(dǎo)致內(nèi)容丟失。
反之也用BASE64來重新得到byte[]。
二進(jìn)制數(shù)據(jù)要轉(zhuǎn)成字符串來傳輸是需要經(jīng)過編碼(例如BASE64)處理才可以的;

1.在發(fā)送端用BASE64Encoder將二進(jìn)制數(shù)據(jù)編碼成字符串后再發(fā)送;
byte[] bt = <bt是讀取到的圖片的二制數(shù)據(jù)>;
String temp = new sun.misc.BASE64Encoder().encodeBuffer(bt);

2.在接收端用BASE64Decoder對接收到的字符串解碼成二進(jìn)制數(shù)據(jù);再輸出生成圖片;
byte[] bt = new sun.misc.BASE64Decoder().decodeBuffer(temp);

BASE64編碼參見: http://baike.baidu.com/view/1485202.htm
 
例子:
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
  
import junit.framework.TestCase;
  
public class Debug extends TestCase
{
  public void test() throws Exception
  {
    //1.在發(fā)送端用BASE64Encoder將二進(jìn)制數(shù)據(jù)編碼成字符串后再發(fā)送;
    String srcfile = "G:/workspace/hzjx_wsdl/WebContent/images/wj.jpg";
    byte[] bt_src = readFile(srcfile);
    String temp = new sun.misc.BASE64Encoder().encodeBuffer(bt_src);
      
    // .....<webservice傳輸 temp 過程>
      
    //2.在接收端用BASE64Decoder對接收到的字符串解碼成二進(jìn)制數(shù)據(jù);再輸出生成圖片;
    byte[] bt_tag = new sun.misc.BASE64Decoder().decodeBuffer(temp);
    String tagfile = "G:/abcde.jpg";
    saveToFile(bt_tag, tagfile);
      
    System.out.println("請檢查目標(biāo)文件<"+tagfile+">是否與源文件<"+srcfile+">的內(nèi)容肯定是相同的!");
    System.out.println("內(nèi)容相同證明Base64編碼與解碼處理過程肯定是正確的!");
  }
  
  public static byte[] readFile(String filePath)
  {
    byte[] arr_result = null;
    InputStream in = null;
    ByteArrayOutputStream fout = new ByteArrayOutputStream(8192);
    try
    {
      in = new FileInputStream(filePath);
      BufferedInputStream fin = new BufferedInputStream(in, 8192);
  
      byte[] data = new byte[8192];
      int count = 0;
  
      while (count >= 0)
      {
        count = fin.read(data);
        if (count > 0)
        {
          fout.write(data, 0, count);
        }
      }
  
      arr_result = fout.toByteArray();
    catch (Exception e)
    {
      e.printStackTrace();
    finally
    {
      if (in != null)try{in.close();} catch (Exception ex){}
      if (fout != null)try{fout.close();} catch (Exception ex){}
    }
  
    return arr_result;
  }
  
  public static void saveToFile(byte[] bt, String filePath)
  {
    OutputStream os = null;
    try
    {
      File savefile = new File(filePath);
      os = new FileOutputStream(savefile);
      os.write(bt);
    catch (IOException e)
    {
      e.printStackTrace();
    }  finally
    {
      if (os != null){try{os.close();} catch (Exception ex){}}
    }
  }
  
}

 

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
淺談Base64編碼
圖片與二進(jìn)制之間的轉(zhuǎn)換
Android圖片編解碼實(shí)現(xiàn)方案(Skia) demo
shellcode xor編碼/解碼[2]
連續(xù)可變斜率增量調(diào)制(CVSD)淺析
用DES加密字符串
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服