成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

java 流與 byte[] 的互轉操作

瀏覽:88日期:2022-08-23 11:00:56

1. InputStream -> byte[]

引入 apache.commons.is 包

import org.apache.commons.io.IOUtils;

byte[] bytes = IOUtils.toByteArray(inputStream);

2. byte[] -> InputStream

InputStream inputStream = new ByteArrayInputStream(bytes);

補充知識:byte[]與各種數據類型互相轉換示例

在socket開發過程中,通常需要將一些具體的值(這些值可能是各種JAVA類型)轉化為byte[]類型,為此我總結了如下這個示例,貼出來,以便經常翻看

public class TestCase { /** * short到字節數組的轉換. */ public static byte[] shortToByte(short number) { int temp = number; byte[] b = new byte[2]; for (int i = 0; i < b.length; i++) { b[i] = new Integer(temp & 0xff).byteValue();// 將最低位保存在最低位 temp = temp >> 8;// 向右移8位 } return b; } /** * 字節數組到short的轉換. */ public static short byteToShort(byte[] b) { short s = 0; short s0 = (short) (b[0] & 0xff);// 最低位 short s1 = (short) (b[1] & 0xff); s1 <<= 8; s = (short) (s0 | s1); return s; } /** * int到字節數組的轉換. */ public static byte[] intToByte(int number) { int temp = number; byte[] b = new byte[4]; for (int i = 0; i < b.length; i++) { b[i] = new Integer(temp & 0xff).byteValue();// 將最低位保存在最低位 temp = temp >> 8;// 向右移8位 } return b; } /** * 字節數組到int的轉換. */ public static int byteToInt(byte[] b) { int s = 0; int s0 = b[0] & 0xff;// 最低位 int s1 = b[1] & 0xff; int s2 = b[2] & 0xff; int s3 = b[3] & 0xff; s3 <<= 24; s2 <<= 16; s1 <<= 8; s = s0 | s1 | s2 | s3; return s; } /** * long類型轉成byte數組 */ public static byte[] longToByte(long number) { long temp = number; byte[] b = new byte[8]; for (int i = 0; i < b.length; i++) { b[i] = new Long(temp & 0xff).byteValue();// 將最低位保存在最低位 temp = temp // >> 8;// 向右移8位 } return b; } /** * 字節數組到long的轉換. */ public static long byteToLong(byte[] b) { long s = 0; long s0 = b[0] & 0xff;// 最低位 long s1 = b[1] & 0xff; long s2 = b[2] & 0xff; long s3 = b[3] & 0xff; long s4 = b[4] & 0xff;// 最低位 long s5 = b[5] & 0xff; long s6 = b[6] & 0xff; long s7 = b[7] & 0xff; // s0不變 s1 <<= 8; s2 <<= 16; s3 <<= 24; s4 <<= 8 * 4; s5 <<= 8 * 5; s6 <<= 8 * 6; s7 <<= 8 * 7; s = s0 | s1 | s2 | s3 | s4 | s5 | s6 | s7; return s; } /** * double到字節數組的轉換. */ public static byte[] doubleToByte(double num) { byte[] b = new byte[8]; long l = Double.doubleToLongBits(num); for (int i = 0; i < 8; i++) {b[i] = new Long(l).byteValue();l = l >> 8; } return b; } /** * 字節數組到double的轉換. */ public static double getDouble(byte[] b) { long m; m = b[0]; m &= 0xff; m |= ((long) b[1] << 8); m &= 0xffff; m |= ((long) b[2] << 16); m &= 0xffffff; m |= ((long) b[3] << 24); m &= 0xffffffffl; m |= ((long) b[4] << 32); m &= 0xffffffffffl; m |= ((long) b[5] << 40); m &= 0xffffffffffffl; m |= ((long) b[6] << 48); m &= 0xffffffffffffffl; m |= ((long) b[7] << 56); return Double.longBitsToDouble(m); } /** * float到字節數組的轉換. */ public static void floatToByte(float x) { //先用 Float.floatToIntBits(f)轉換成int } /** * 字節數組到float的轉換. */ public static float getFloat(byte[] b) { // 4 bytes int accum = 0; for ( int shiftBy = 0; shiftBy < 4; shiftBy++ ) { accum |= (b[shiftBy] & 0xff) << shiftBy * 8; } return Float.intBitsToFloat(accum); } /** * char到字節數組的轉換. */ public static byte[] charToByte(char c){ byte[] b = new byte[2]; b[0] = (byte) ((c & 0xFF00) >> 8); b[1] = (byte) (c & 0xFF); return b; }/** * 字節數組到char的轉換. */ public static char byteToChar(byte[] b){ char c = (char) (((b[0] & 0xFF) << 8) | (b[1] & 0xFF)); return c; } /** * string到字節數組的轉換. */ public static byte[] stringToByte(String str) throws UnsupportedEncodingException{ return str.getBytes('GBK'); } /** * 字節數組到String的轉換. */ public static String bytesToString(byte[] str) { String keyword = null; try { keyword = new String(str,'GBK'); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return keyword; } /** * object到字節數組的轉換 */ @Test public void testObject2ByteArray() throws IOException, ClassNotFoundException { // Object obj = ''; Integer[] obj = { 1, 3, 4 }; // // object to bytearray ByteArrayOutputStream bo = new ByteArrayOutputStream(); ObjectOutputStream oo = new ObjectOutputStream(bo); oo.writeObject(obj); byte[] bytes = bo.toByteArray(); bo.close(); oo.close(); System.out.println(Arrays.toString(bytes)); Integer[] intArr = (Integer[]) testByteArray2Object(bytes); System.out.println(Arrays.asList(intArr)); byte[] b2 = intToByte(123); System.out.println(Arrays.toString(b2)); int a = byteToInt(b2); System.out.println(a); } /** * 字節數組到object的轉換. */ private Object testByteArray2Object(byte[] bytes) throws IOException, ClassNotFoundException { // byte[] bytes = null; Object obj; // bytearray to object ByteArrayInputStream bi = new ByteArrayInputStream(bytes); ObjectInputStream oi = new ObjectInputStream(bi); obj = oi.readObject(); bi.close(); oi.close(); System.out.println(obj); return obj; } }

以上這篇java 流與 byte[] 的互轉操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美日韩国产一级二级| 亚洲国产成人在线| 久久这里都是精品| 国产精品 欧美精品| 欧美在线一二三四区| 婷婷六月综合亚洲| 亚洲欧美国产精品桃花| 亚洲欧美日韩一区| 伊人久久大香线蕉av超碰演员| 91精品久久久久久久91蜜桃| 午夜影院在线观看欧美| 亚洲日本视频| 国产欧美日韩视频在线观看| 99久久精品久久久久久清纯| 日韩女优制服丝袜电影| 国产综合久久久久久鬼色| 欧美伊人久久久久久午夜久久久久| 丝袜亚洲另类欧美综合| 久久精品国产清高在天天线 | 欧美日韩精品一区二区三区| 欧美aⅴ一区二区三区视频| 一本大道av伊人久久综合| 婷婷久久综合九色综合伊人色| 久久看片网站| 麻豆久久一区二区| 欧美精品乱码久久久久久按摩| 精品伊人久久久久7777人| 欧美日韩国产综合视频在线观看 | 亚洲每日更新| 亚洲国产视频一区| 另类av一区二区| 免费看日韩精品| 7777女厕盗摄久久久| 国产91精品欧美| 精品美女在线观看| 色综合一区二区| 国产精品另类一区| 一本色道婷婷久久欧美| 午夜精品久久一牛影视| 欧美三级视频在线观看| 国产v综合v亚洲欧| 久久久国产午夜精品| 国产精品二区二区三区| 国产精品进线69影院| 极品尤物久久久av免费看| 亚洲综合另类小说| 色综合久久久久网| 国产一区二区视频在线| 日韩三级视频中文字幕| 色综合天天综合色综合av | 亚洲色图视频网| 香蕉av777xxx色综合一区| 麻豆国产精品一区二区三区| 日韩亚洲欧美成人一区| 欧美二区不卡| 亚洲综合精品自拍| 欧美午夜精品理论片a级按摩| 国产一二精品视频| 国产色婷婷亚洲99精品小说| 99国产精品99久久久久久粉嫩| 天堂va蜜桃一区二区三区漫画版| 欧美美女网站色| 欧美体内she精视频在线观看| 亚洲自拍欧美精品| 91久久精品网| 成人av在线看| 一级特黄大欧美久久久| 欧美日韩美少妇| 91亚洲男人天堂| 亚洲综合免费观看高清完整版| 在线观看不卡视频| 国产**成人网毛片九色| 国产精品久久久久桃色tv| 一本色道久久综合精品竹菊| 国产成人精品一区二区三区四区| 国产精品乱人伦| 91福利在线导航| 99re热这里只有精品视频| 夜夜嗨av一区二区三区四季av | 国产久一道中文一区| 国产黄人亚洲片| 亚洲婷婷在线视频| 激情五月播播久久久精品| 日韩欧美一级精品久久| 精品国产乱码久久| 欧美在线视频日韩| 波多野结衣精品在线| 亚洲一区二区三区四区在线观看| 国产日韩精品一区二区三区| 精品国产91久久久久久久妲己 | 成人欧美一区二区三区1314| 亚洲综合色噜噜狠狠| 欧美三级中文字幕| 欧美日韩国产综合网| 亚洲bdsm女犯bdsm网站| 2023国产精品| 久久久久久九九九九| 91丨porny丨中文| 热久久国产精品| 国产成人av在线影院| 亚洲精品国产成人久久av盗摄| 欧美一区二视频| 在线亚洲免费| 成人黄色网址在线观看| 香蕉成人啪国产精品视频综合网 | 精品少妇一区二区三区视频免付费 | 首页国产欧美日韩丝袜| 亚洲第一激情av| 国产精品亚洲欧美| 捆绑紧缚一区二区三区视频| 欧美激情一区二区| 欧美日韩一区久久| 亚洲日韩视频| 成人动漫精品一区二区| 午夜成人免费电影| 国产精品天美传媒| 欧美日本一区二区| 欧美久久久久久久| 久久66热re国产| 亚洲男同性视频| 日韩一区二区电影网| 性久久久久久| 欧美精品国产一区二区| 人人狠狠综合久久亚洲| 中文字幕一区二区在线观看| 欧美一级高清大全免费观看| 亚洲男人影院| 欧美日韩第一区| 国产精品一区二区x88av| 亚洲高清免费视频| 国产欧美日韩不卡| 日韩一卡二卡三卡| 久久久久se| 亚洲国产精选| 9久草视频在线视频精品| 美女视频黄频大全不卡视频在线播放| 中文字幕制服丝袜成人av| 91精品国模一区二区三区| 性感少妇一区| 一区福利视频| 91丨九色丨蝌蚪丨老版| 国产一区在线观看麻豆| 日韩黄色小视频| 亚洲一区在线电影| 自拍偷拍国产亚洲| 中文字幕av资源一区| 精品国产一区a| 欧美视频完全免费看| 榴莲视频成人在线观看| 亚洲国产导航| 国产综合色产| 色综合天天综合给合国产| 国产精品一区在线观看乱码| 五月天激情小说综合| 亚洲精选免费视频| 国产精品久久久久久亚洲伦 | 亚洲成av人片一区二区梦乃| 一色桃子久久精品亚洲| 国产日韩在线不卡| 精品欧美一区二区三区精品久久| 欧美日韩一区视频| 欧美在线看片a免费观看| 久久亚洲风情| 久久久久久自在自线| 国产日韩亚洲| 国产三区精品| 亚洲精品久久| 97精品电影院| 97成人超碰视| 99久久99久久精品国产片果冻| 国产aⅴ综合色| 国产不卡视频在线观看| 国产乱码字幕精品高清av| 国产一区二区主播在线| 国产毛片精品一区| 国产成人日日夜夜| 成a人片国产精品| 成人免费毛片嘿嘿连载视频| 国产美女视频91| 国产麻豆一精品一av一免费| 国产在线一区二区综合免费视频| 久久精品99国产精品日本| 青青草97国产精品免费观看| 日韩av中文字幕一区二区| 五月天中文字幕一区二区| 亚洲一区电影777| 亚洲成人免费电影| 日韩电影在线观看一区| 日韩不卡在线观看日韩不卡视频| 亚洲三级在线免费观看| 日韩理论片在线| 国产精品久久国产精麻豆99网站| 1024国产精品| 亚洲午夜久久久久久久久电影网| 亚州成人在线电影| 久久精品999| 丁香五精品蜜臀久久久久99网站 | 欧美1区2区视频| 伊人天天综合| 99精品欧美|