1. 程式人生 > >java物件和byte陣列互轉,直接拿去用

java物件和byte陣列互轉,直接拿去用

//加了了Optional防止空指標異常,加入了泛型,省去了強制轉化
import java.io.*;
import java.util.Optional;
/**
 * Created by Jason on 2017/1/3.
 */
public class ByteArrayUtils {

    public static<T> Optional<byte[]> objectToBytes(T obj){
        byte[] bytes = null;
ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream sOut; try { sOut = new ObjectOutputStream(out); sOut.writeObject(obj); sOut.flush(); bytes= out.toByteArray(); } catch (IOException e) { e.printStackTrace(); } return Optional.ofNullable(bytes); } public static<T> Optional<T> bytesToObject
(byte[] bytes) { T t = null; ByteArrayInputStream in = new ByteArrayInputStream(bytes); ObjectInputStream sIn; try { sIn = new ObjectInputStream(in); t = (T)sIn.readObject(); } catch (Exception e) { e.printStackTrace(); } return Optional.ofNullable(t);
} }

相關推薦

java物件byte陣列,直接

//加了了Optional防止空指標異常,加入了泛型,省去了強制轉化 import java.io.*; import java.util.Optional; /** * Created by Jason on 2017/1/3. */ public class Byt

Java 10進位制byte陣列與16進位制byte陣列 及 在DES加解密中的使用

一、10進位制byte陣列與16進位制byte陣列互轉 1. 10進位制byte陣列轉成16進位制byte陣列 Java中10進位制byte用二進位制表示佔用8位,16進位制的每個字元需要用4位二進位制位來表示,則將每一個10進位制 位元組的高4位、低4位分別進行處理,對應

Java 基本資料型別與byte陣列

package com.vcc.convert; /** * BigEndian和LittleEndian轉換,BigEndian陣列下標0表示最高位 * * @author proxyme * */ public class EndianConverter

java物件與json字串

場景:java物件與json字串互轉換 1.本例使用com.alibaba.fastjson.JSON類 2.實體物件轉換為json字串 public static String toJSONString(Object city) { String jsonStr = ""; if (c

java整數byte陣列之間的轉換

做的程式有時候會需要用到, 記錄下 public class NumberUtil { /** * int整數轉換為4位元組的byte陣列 * * @param i * 整數 * @return byte陣列 */ pub

java 駝峰下劃線

public class Tool{ private static Pattern linePattern = Pattern.compile(“_(\w)”); /*下劃線轉駝峰/ public stati

JAVA物件與XML的

       前幾天學習了用Marshaller 來實現Java物件與xml的互轉,現在記錄一下筆記,以便以後查閱。        Marshaller 類負責管理將 Java 內容樹序列化回 XML 資料的過程。        話不多說,直接上程式碼。        首先

android混淆傻瓜式教程,直接

# Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in D:\android-sdk-windo

Android 錄音功能直接

前言最近專案中需要用到錄音的功能,借鑑了外國一位哥們的專案https://github.com/dkim0419/SoundRecorder ,搞定需求之後,花了些時間封裝成一個錄音的工具包,分享給大家,需要原始碼的 點選這裡先貼個效果圖給大家看一下,看看這個錄音包的功能SoundRecorderUtils.

利用JAXB對java物件xml

好一段時間沒寫部落格了,一直出差得有半年多時間了吧!其實還是懶,哈哈 最近算是轉行做大資料了,還好有個前輩帶帶,應該是比不少人少走彎路吧! 這東西主要學的是思想 今天寫個java物件和xml互轉的(專案的要用到xml的配置檔案) 主要是用JAXB實現java

Java中ListString【】陣列

將List轉成陣列 1.List轉陣列 /** * List to Array * @param list * @return

Java中字串byte陣列之間的相互轉換

1、將字元轉換成byte陣列 String str = "羅長"; byte[] sb = str.getBytes(); 2、將byte陣列轉換成字元 byte[] b={(byte)0xB8,(byte)0xDF,(byte)0xCB,(byte)0xD9}; String str=

java裡的日期格式 UTC本地時間

Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) -1);//當前時間的前一小時舉例 SimpleDateFormat d

(Java序列化為byte陣列方式) Java 序列化反序列化

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutput

Java中字元byte陣列之間的相互轉換

Java與其他語言編寫的程式進行tcp/ip socket通訊時,通訊內容一般都轉換成byte陣列型,java在字元與陣列轉換也是非常方便的; 1、將字元轉換成byte陣列      String  str = "羅長";     byte[] sb = str.getBy

java中float與byte[]的

起因:想把一個float[]轉換成記憶體資料,查了一下,下面兩個方法可以將float轉成byte[]。 方法一  import java.nio.ByteBuffer; import java.util.ArrayList; float buffer = 0f;

Jedis儲存Java物件--Java序列化為byte陣列方式

轉載自:http://www.cnblogs.com/linjiqin/archive/2013/05/29/3105608.html 這種方式很常用,並且很多用-----我就在專案中大量使用過,感謝原作者寫的這麼好的文章 1、要儲存的物件 現在寫一個很土的Java B

javaoracle日期

  1、將java.util.Date 轉換為 java.sql.Date java.util.Date utilDate = new java.util.Date(); java.sql.Date sqlDate = new java.sql.Date(utilDate.

utc時間local 時間

python utc time local time python 1.utc 時間和 local 時間互轉#utc 轉本地時間def utcFlocaltime(utc_time): utc_time = utc_time + datetime.timedelta(hour

java FileByte[]數組 相互轉換

rac ring eno print [] director mkdir int num public class Test { public static void main(String[] args){ String filePath