1. 程式人生 > >JAVA 中byte轉換為char儲存

JAVA 中byte轉換為char儲存

//資料型別轉換

java中的基本型別都為有符號型別。從檔案讀取流中獲取的資料為byte陣列,其中部分值為大於127的ascii值,這樣在向char陣列中轉換時符號位會出錯,解決方法:如果該值大於127(也就是小於0),那麼為該值加256,從而校正符號位。示例程式碼如下:

 //從String獲取byte陣列
  int len = str.length();
  byte[] ab = new byte[len];
  ab = str.getBytes();
 
  for (int i=0; i<len; i++)
  {
   if (ab[i] < 0)
    System.out.print((char)(ab[i]+256));
   else
    System.out.print((char)(ab[i]));
  }
  System.out.println();

//關於String.GetByte出錯解決:

對於string中儲存拼音時,部分帶音調字母會轉換錯誤,可採用下面的方法:

 //從String獲取char陣列,經過處理轉換到byte陣列
  char[] ac = new char[8];
  str.getChars(0, len, ac, 0);
  
  byte[] arrb = new byte[len];
  for (int i=0; i<len; i++)
  {
   arrb[i] = (byte)ac[i];
   if (arrb[i] < 0)
    System.out.print((char)(arrb[i]+256));
   else
    System.out.print((char)(arrb[i]));
  }

相關推薦

JAVA byte轉換char儲存

//資料型別轉換 java中的基本型別都為有符號型別。從檔案讀取流中獲取的資料為byte陣列,其中部分值為大於127的ascii值,這樣在向char陣列中轉換時符號位會出錯,解決方法:如果該值大於127(也就是小於0),那麼為該值加256,從而校正符號位。示例程式碼如下:  

java xml轉換json對象

xml轉換 serial () hid cti mave tostring code ace 1、前提須要jar包: json-lib-2.4-jdk15.jar 和 xom-1.2.5.jar ,maven 倉庫: net.sf.jso

Javabyte轉換int時與0xff進行與運算的原因

java中byte轉換int時為何與0xff進行與運算 在剖析該問題前請看如下程式碼 public static String bytes2HexString(byte[] b) {  String ret = "";  for (int i = 0; i < b.le

Java數字轉換字串,字串轉換字元

String str = "123"; int num = 12; //字串轉換為數字 int tranToNum = Integer.parseInt(str, 16);//這裡的16表示十六進位制

JavaDate轉換Datetime、String與Date的相互轉換

本轉換在專案中經常遇見,現簡要地說明: (1) Date轉換為Datetime Datetime在java資料庫中對應的是Timestamp,轉換如下: //java.util.Date轉換為Timestamp Date date = new Date();

java xml轉換json物件

1、前提需要jar包: json-lib-2.4-jdk15.jar 和 xom-1.2.5.jar ,maven 倉庫: net.sf.json-lib json-lib

java亂碼詳解(javabytechar轉換

轉自:http://hi.baidu.com/%C6%F3%D2%B5%BC%D2%D4%B0/blog/item/825a4858d6248e8b810a181a.html   java byte與char互轉原理-轉   一、位元組和unicode Java核心是unicode的,就連class檔案也是

javabyte、short、char、int的轉換

java中byte、short、 char和Int“字面值”之間可以不加強制型別轉換,只要int型別的“字面值”不超過byte、short、char型別的範圍。如: byte i = 10(java中預設為int型別);可以轉換;byte i = 128;不可以轉換,128

Javabyte[]和char[]互相轉換

main enc chart code pre void flip rgs === package gj; import java.nio.ByteBuffer; import java.nio.CharBuffer; import java.nio.char

java byte[]、File、InputStream 互相轉換

output 轉換 ava available byte數組 leo ear inpu red 1、將File、FileInputStream 轉換為byte數組: File file = new File("test.txt"); InputStream input =

javajava byte[]、File、InputStream 互相轉換

new 文件名 讀寫 文件 tps byte數組 lan http 過程 ========================================================================= 使用過程中,一定要註意close()掉各個讀寫流!!

Javabyte與16進制字符串的互相轉換

ring ati case nbsp i++ 轉換成 con htm uil https://www.cnblogs.com/qinwangchen/p/5418028.html * Convert byte[] to hex string.這裏我們可以將byte轉換

c#與javabyte位元組的區別及轉換方法

在java中  byte的範圍在 [-128,127] 在C#中  byte的範圍在 [0,255] 所以 java程式與C#程式 進行資料傳輸的時候 要先把java的byte陣列轉換成在[0,255]範圍內的int型陣列a[];再把a[]進行加密得到字串str, 把字串

javaString,int,Integer,char 型別轉換

如何將整數 int 轉換成Integer ? Integer integer=new Integer(i); 如何將Integer 轉換成 int ? int num=Integer.intValue(); 如何將字串 String 轉換成整數 int? int i =

java將金額轉換漢語大寫

做這個應用,源於突然的一個想法:看到發票上面的數字要轉換成漢語中人民幣的大寫 於是就有了下面的這些事兒..... 先看看執行效果: ======================================================

javabyte陣列與int型別的轉換(兩種方式)

java中byte陣列與int型別的轉換,在網路程式設計中這個演算法是最基本的演算法,我們都知道,在socket傳輸中,傳送、者接收的資料都是 byte陣列,但是int型別是4個byte組成的,如何把一個整形int轉換成byte陣列,同時如何把一個長度為4的byte陣列轉

javabyte陣列與int型別的轉換 兩種方式

                java中byte陣列與int型別的轉換,在網路程式設計中這個演算法是最基本的演算法,我們都知道,在socket傳輸中,傳送、者接收的資料都是 byte陣列,但是int型別是4個byte組成的,如何把一個整形int轉換成byte陣列,同時如何把一個長度為4的byte陣列轉換為i

Java bytebyte 陣列和 int、long 之間的轉換

Java 中 byte 和 int 之間的轉換原始碼: //byte 與 int 的相互轉換 public static byte intToByte(int x) { return (byte) x; } pub

java byte[]、File、InputStream 互相轉換工具類

java 中 byte[]、File、InputStream 互相轉換1、將File、FileInputStream 轉換為byte陣列:File file = new File("test.txt");InputStream input = new FileInputSt

Arduino資料型別轉換 float/double轉換char 親測好使,dtostrf()函式

       如何輕鬆玩轉Arduino微控制器,當我在進行資料轉換的時候,遇到了問題,嘗試了C語言和C++中的好多函式,都沒有達到將float型資料轉換為char型的目的。苦苦查閱資料後,終於找到了一