<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 303  文章 - 883  trackbacks - 0
    <2007年8月>
    2930311234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    歡迎光臨! 
    閑聊 QQ:1074961813

    隨筆分類(357)

    我管理的群

    公共blog

    • n維空間
    • Email : java3d@126.com 群 : 12999758

    參與管理的論壇

    好友的blog

    我的其他blog

    朋友的網站

    搜索

    •  

    最新評論

    我們知一個byte是代表一個ASCII,中文又兩個ASCII組成,現在我們有一個byte[]里面存放著任意的字符串,我們截取我想截取的數;如果最后一個是半個中文,則去掉;
    代碼如下:

    測試代碼

    public class ByteTest {
        
    public static void main(String[] args) {
            MyByte mybyte 
    = new MyByte();
            mybyte.dochar(
    "你不a是a我aa誰?",3);
        }

    }

    處理代碼

    public class MyByte {

        
    public void dochar(String str, int count) {

            
    byte[] temp = str.getBytes();
            
    byte[] bArray = new byte[count * 2];

            
    int i;
            
    int ii = 0;// 用于判斷最后一個是不是一半漢字
            String strc = "full";

            
    for (i = 0; i < count; i++{
                bArray[i] 
    = temp[i];
            }

            
    for (i = 0; i < count; i++{
                
    if (bArray[i] < 0{
                    ii
    ++;
                }

            }

            
    if (ii % 2 != 0{
                strc 
    = "hard";
            }


            
    // 截下去為完全的時候
            if (strc.equals("full"&& bArray[i] < 0{
                bArray[i] 
    = ' ';
            }

            
    // 截下去為一半的時候
            if (strc.equals("hard"&& bArray[i - 1< 0{
                bArray[i 
    - 1= ' ';
            }

            System.out.println(
    new String(bArray).trim());
        }

    }



    地震讓大伙知道:居安思危,才是生存之道。
    posted on 2007-08-27 10:36 小尋 閱讀(1692) 評論(4)  編輯  收藏 所屬分類: j2se/j2ee/j2me

    FeedBack:
    # re: 在byte[]里截取中文 2007-08-28 13:26 幻想~@@~
    群里一個朋友寫處理類,更加簡單,值得學習 呵呵
    public void getChar(String str, int count) {    
                
    byte[] byteArray = new byte[count];
            
    byte[] temp = str.getBytes();
            
    int ii=0;
            
    for (int i = 0; i < count; i++{    
                byteArray[i]
    =temp[i];
                
                
    if(temp[i]<0){
                    ii
    ++;                
                }

            }

            
            
    if(ii%2==1){
                byteArray[count
    -1]=' ';
            }

            
            

            System.out.println(
    new String(byteArray).trim());

        }

      回復  更多評論
      
    # re: 在 byte[ ] 里截取中文 2008-11-22 18:24 sinfrancis
    有可能我是使用RandomAccessFile回頭讀取文件的呢
    可能出現第一個字節就是半個中文
    或者個第一個和最后一個都是半個漢字的情況 我該怎么判斷呢???
    謝謝 如有好的方法 告訴我一下 我的郵箱: kyowxf2003@163.com  回復  更多評論
      
    # re: 在 byte[ ] 里截取中文 2008-11-22 20:49 小尋

    在全是中文的情況下,你可以判斷該字符的前一個字符是不是空格。

      回復  更多評論
      
    # re: 在 byte[ ] 里截取中文[未登錄] 2012-02-29 14:18 test
    垃圾  回復  更多評論
      
    主站蜘蛛池模板: 女人被男人躁的女爽免费视频| 亚洲欧洲一区二区三区| 日本亚洲高清乱码中文在线观看| 亚洲国产精品视频| 免费无码又爽又刺激高潮视频| 亚洲偷自拍另类图片二区| 亚洲国产精品成人| 18女人腿打开无遮掩免费| 国产精品成人亚洲| 亚洲色av性色在线观无码| 免费乱码中文字幕网站| 久久99国产乱子伦精品免费| 春暖花开亚洲性无区一区二区 | 免费看片A级毛片免费看| 国内精品99亚洲免费高清| 亚洲男人天堂影院| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 亚洲人成亚洲人成在线观看| 91情侣在线精品国产免费| 国产精品免费久久久久久久久| 亚洲AV无码久久久久网站蜜桃| 亚洲午夜久久久影院| 日韩a在线观看免费观看| 最近2019年免费中文字幕高清| 亚洲免费视频一区二区三区| 亚洲成_人网站图片| 久久久久亚洲AV无码网站| ZZIJZZIJ亚洲日本少妇JIZJIZ| 成人黄18免费视频| 亚洲一区二区三区免费观看| 91在线免费视频| 成人免费视频一区二区| 亚洲日本中文字幕天天更新| 亚洲视频一区在线播放| 亚洲无线码在线一区观看| 免费播放春色aⅴ视频| 女人被弄到高潮的免费视频| 国产精品免费网站| 1000部禁片黄的免费看| 无码一区二区三区免费| 中文字幕免费人成乱码中国|