真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何在Android中對字符串進行壓縮

這期內(nèi)容當中小編將會給大家?guī)碛嘘P如何在Android中對字符串進行壓縮,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

站在用戶的角度思考問題,與客戶深入溝通,找到德保網(wǎng)站設計與德保網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設計、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、雅安服務器托管、企業(yè)郵箱。業(yè)務覆蓋德保地區(qū)。

使用到的類庫

GZIPOutputStream

代碼示例

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
public class StrZipUtil {
 /**
  * @param input 需要壓縮的字符串
  * @return 壓縮后的字符串
  * @throws IOException IO
  */
 public static String compress(String input) throws IOException {
  if (input == null || input.length() == 0) {
   return input;
  }
  ByteArrayOutputStream out = new ByteArrayOutputStream();
  GZIPOutputStream gzipOs = new GZIPOutputStream(out);
  gzipOs.write(input.getBytes());
  gzipOs.close();
  return out.toString("ISO-8859-1");
 }
 /**
  * @param zippedStr 壓縮后的字符串
  * @return 解壓縮后的
  * @throws IOException IO
  */
 public static String uncompress(String zippedStr) throws IOException {
  if (zippedStr == null || zippedStr.length() == 0) {
   return zippedStr;
  }
  ByteArrayOutputStream out = new ByteArrayOutputStream();
  ByteArrayInputStream in = new ByteArrayInputStream(zippedStr
    .getBytes("ISO-8859-1"));
  GZIPInputStream gzipIs = new GZIPInputStream(in);
  byte[] buffer = new byte[256];
  int n;
  while ((n = gzipIs.read(buffer)) >= 0) {
   out.write(buffer, 0, n);
  }
  // toString()使用平臺默認編碼,也可以顯式的指定如toString("GBK")
  return out.toString();
 }
}

紅米手機測試輸出

08-09 13:16:53.388 32248-32267/com.rustfisher.ndkproj D/rustApp: 開始存入數(shù)據(jù)庫 ori1 len=304304
08-09 13:16:53.418 32248-32267/com.rustfisher.ndkproj D/rustApp: 已存入數(shù)據(jù)庫 ori1 len=304304 , 耗時約37 ms
08-09 13:16:53.418 32248-32267/com.rustfisher.ndkproj D/rustApp: 開始壓縮 ori1 len=304304
08-09 13:16:53.438 32248-32267/com.rustfisher.ndkproj D/rustApp: 壓縮完畢 zip1 len=1112 , 耗時約19 ms
08-09 13:16:53.438 32248-32267/com.rustfisher.ndkproj D/rustApp: 存壓縮后的數(shù)據(jù)進數(shù)據(jù)庫 zip1.length=1112
08-09 13:16:53.448 32248-32267/com.rustfisher.ndkproj D/rustApp: 壓縮后的數(shù)據(jù)已進數(shù)據(jù)庫 zip1.length=1112 , 耗時約8 ms
08-09 13:16:53.448 32248-32267/com.rustfisher.ndkproj D/rustApp: 解壓開始
08-09 13:16:53.488 32248-32267/com.rustfisher.ndkproj D/rustApp: 解壓完畢 耗時約36 ms

存儲時間受存儲字符串的長度影響。字符串長度與存儲耗時正相關。

榮耀手機測試

08-09 10:38:42.759 23075-23109/com.rustfisher D/rustApp: 開始壓縮 ori1 len=304304
08-09 10:38:42.764 23075-23109/com.rustfisher D/rustApp: 壓縮完畢 zip1 len=1112
08-09 10:38:42.764 23075-23109/com.rustfisher D/rustApp: 解壓開始
08-09 10:38:42.789 23075-23109/com.rustfisher D/rustApp: 解壓完畢

此例中,榮耀壓縮耗時約5ms,解壓耗時約25ms。

可以看出,壓縮后與原長度之比 1112/304304, 約0.365%

壓縮和解壓縮耗時視手機情況而定。

上述就是小編為大家分享的如何在Android中對字符串進行壓縮了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當前標題:如何在Android中對字符串進行壓縮
本文鏈接:http://weahome.cn/article/pdcpgh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部