騎豬闖天下

          J2ME隨筆,記錄成長(zhǎng)的腳步

          統(tǒng)計(jì)

          留言簿(3)

          閱讀排行榜

          評(píng)論排行榜

          [JAVA]Utils類,java數(shù)據(jù)類型轉(zhuǎn)換小結(jié)

          2010年來(lái)了,為迎接虎年大吉,記住這個(gè)不平凡的虎年,今天開(kāi)始寫(xiě)東西!
          時(shí)至今日,J2ME方面的東西也有了一定的積累,好久不整理,有些東西都慢慢的開(kāi)始生疏了,為了紀(jì)念曾經(jīng)那些個(gè)日日夜夜的努力,在J2ME領(lǐng)域的不懈探索,本人決定,把當(dāng)前所掌握的東東,分類整理出來(lái),以此為曾經(jīng)拼搏的我表示敬意!

          開(kāi)始今天的內(nèi)容,整理了部分Java數(shù)據(jù)類型的轉(zhuǎn)換,拿過(guò)來(lái)直接可以使用:
          import java.io.*;
          import java.net.SocketTimeoutException;

          /**
           * User: duchangfeng
           * Date: 2010-02-22
           * Time: 15:12:30
           
          */

          public class Utils {
              
          public static String appendToBinaryString(int size, String s) {
                  
          if (s == null) s = "";
                  
          for (int i = s.length(); i < size; i++{
                      s 
          = new StringBuilder().append("0").append(s).toString();
                  }

                  
          return s;
              }


              
          /**
               * 從InputStream中讀取一個(gè)Integer數(shù)據(jù)
               *
               * 
          @param is
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public synchronized int readInt(InputStream is) throws IOException {
                  
          try {
                      
          byte[] _byte = new byte[4];
                      
          synchronized (_byte) {
          //                readLargeSize(is,_byte,0);
                          is.read(_byte);
                          ByteArrayInputStream buf 
          = new ByteArrayInputStream(_byte);
                          DataInputStream in 
          = new DataInputStream(buf);
                          
          int readed = in.readInt();
                          
          //        System.out.println("read int "+readed);
                          if (readed > ConfigReader.getMaxPacketSize()) {
                              System.out.println(_byte);
                          }

                          
          return readed;
                      }

                  }
           catch (Exception e) {
          //            e.printStackTrace();
                      return (int0;
                  }

              }


              
          /**
               * 從字節(jié)數(shù)組中讀取一個(gè)Integer數(shù)據(jù)
               *
               * 
          @param bytes
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public synchronized int readInt(byte[] bytes) throws IOException {
                  
          try {
                      ByteArrayInputStream buf 
          = new ByteArrayInputStream(bytes);
                      DataInputStream in 
          = new DataInputStream(buf);
                      
          int readed = in.readInt();
                      
          //        System.out.println("read int "+readed);
                      return readed;
                  }
           catch (Exception e) {
                      e.printStackTrace();
                      
          return (int0;
                  }

              }


              
          /**
               * 從字節(jié)數(shù)組中讀取一個(gè)Short數(shù)據(jù)
               *
               * 
          @param bytes
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public synchronized short readShort(byte[] bytes) throws IOException {
                  
          try {
                      ByteArrayInputStream buf 
          = new ByteArrayInputStream(bytes);
                      DataInputStream in 
          = new DataInputStream(buf);
                      
          short readed = in.readShort();
                      
          //        System.out.println("read int "+readed);
                      return readed;
                  }
           catch (Exception e) {
                      e.printStackTrace();
                      
          return (int0;
                  }

              }


              
          /**
               * 從字節(jié)數(shù)組中讀取一個(gè)Long數(shù)據(jù)
               *
               * 
          @param bytes
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public synchronized long readLong(byte[] bytes) throws IOException {
                  
          try {
                      ByteArrayInputStream buf 
          = new ByteArrayInputStream(bytes);
                      DataInputStream in 
          = new DataInputStream(buf);
                      
          long readed = in.readLong();
                      
          //        System.out.println("read int "+readed);
                      return readed;
                  }
           catch (Exception e) {
                      e.printStackTrace();
                      
          return (int0;
                  }

              }


              
          /**
               * 獲取Integer的字節(jié)數(shù)組
               *
               * 
          @param target
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public byte[] getBytes(int target) throws IOException {
                  ByteArrayOutputStream buf 
          = new ByteArrayOutputStream();
                  DataOutputStream out 
          = new DataOutputStream(buf);
                  out.writeInt(target);
                  
          return buf.toByteArray();
              }


              
          /**
               * 從InputStream中讀取一個(gè)Short數(shù)據(jù)
               *
               * 
          @param is
               * 
          @return
               * 
          @throws IOException
               
          */

              
          public synchronized short readShort(InputStream is) throws IOException {
                  
          try {
                      
          byte[] _byte = new byte[2];
                      
          synchronized (_byte) {
          //                readLargeSize(is,_byte,0);
                          is.read(_byte);
                          ByteArrayInputStream buf 
          = new ByteArrayInputStream(_byte);
                          DataInputStream in 
          = new DataInputStream(buf);
                          
          short readed = in.readShort();
                          
          //        System.out.println("read short "+readed);
                          return readed;
                      }

                  }
           catch (Exception e) {
                      
          return (short0;
                  }

              }


              
          /**
               * 獲取Short的字節(jié)數(shù)組
               *
               * 
          @param target
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public byte[] getBytes(short target) throws IOException {
                  ByteArrayOutputStream buf 
          = new ByteArrayOutputStream();
                  DataOutputStream out 
          = new DataOutputStream(buf);
                  out.writeShort(target);
                  
          return buf.toByteArray();
              }


              
          /**
               * 從InputStream中讀取一個(gè)Long數(shù)據(jù)
               *
               * 
          @param is
               * 
          @return
               * 
          @throws IOException
               
          */

              
          public synchronized long readLong(InputStream is) throws IOException {
                  
          try {
                      
          byte[] _byte = new byte[8];
                      
          synchronized (_byte) {
                          is.read(_byte);
          //                readLargeSize(is,_byte,0);
                          ByteArrayInputStream buf = new ByteArrayInputStream(_byte);
                          DataInputStream in 
          = new DataInputStream(buf);
                          
          long readed = in.readLong();
                          
          //        System.out.println("read long "+readed);
                          return readed;
                      }

                  }
           catch (Exception e) {
                      
          return (long0;
                  }

              }


              
          /**
               * 獲取Long的字節(jié)數(shù)組
               *
               * 
          @param target
               * 
          @return
               * 
          @throws java.io.IOException
               
          */

              
          public byte[] getBytes(long target) throws IOException {
                  ByteArrayOutputStream buf 
          = new ByteArrayOutputStream();
                  DataOutputStream out 
          = new DataOutputStream(buf);
                  out.writeLong(target);
                  
          return buf.toByteArray();
              }


              
          public synchronized void readLargeSize(InputStream is, byte[] filePieces, int nowoffset) throws IOException, InterruptedException {
                  
          int read = 0;
                  
          try {
                      read 
          = is.read(filePieces, nowoffset, filePieces.length - nowoffset);
                      System.out.println(
          "讀取了" + read + "個(gè)字節(jié).");
                      
          if (read != filePieces.length - nowoffset) {
                          readLargeSize(is, filePieces, nowoffset 
          + read);
                      }

                  }
           catch (SocketTimeoutException e) {
                      System.out.println(
          "read time out,nowoffset is " + (nowoffset + read));
                      e.printStackTrace();
                  }

              }

          }

          posted on 2010-02-22 15:38 騎豬闖天下 閱讀(559) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 华宁县| 儋州市| 图片| 繁昌县| 宽甸| 清丰县| 南乐县| 和顺县| 邛崃市| 体育| 蓬莱市| 巴楚县| 滦南县| 泗洪县| 光山县| 遂溪县| 高青县| 汉寿县| 秦皇岛市| 金寨县| 莎车县| 桂东县| 呼伦贝尔市| 丰城市| 黑龙江省| 读书| 曲阜市| 若羌县| 凤阳县| 咸阳市| 盘山县| 高州市| 安多县| 介休市| 大悟县| 红河县| 前郭尔| 疏附县| 文化| 卢龙县| 乌兰县|