<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

    朋友的網(wǎng)站

    搜索

    •  

    最新評論

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

    測試代碼

    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 小尋 閱讀(1698) 評論(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回頭讀取文件的呢
    可能出現(xiàn)第一個字節(jié)就是半個中文
    或者個第一個和最后一個都是半個漢字的情況 我該怎么判斷呢???
    謝謝 如有好的方法 告訴我一下 我的郵箱: kyowxf2003@163.com  回復  更多評論
      
    # re: 在 byte[ ] 里截取中文 2008-11-22 20:49 小尋

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

      回復  更多評論
      
    # re: 在 byte[ ] 里截取中文[未登錄] 2012-02-29 14:18 test
    垃圾  回復  更多評論
      
    主站蜘蛛池模板: 亚洲日韩涩涩成人午夜私人影院| 久草视频在线免费| 亚洲国产精品无码久久青草| 亚洲AV综合永久无码精品天堂| 免费a级毛片高清视频不卡| 亚洲一区二区三区免费观看| 114一级毛片免费| 国产AV旡码专区亚洲AV苍井空| 成年人性生活免费视频| 亚洲成熟丰满熟妇高潮XXXXX| 日本黄色免费观看| 免费国产va在线观看| 久久久精品国产亚洲成人满18免费网站 | 91亚洲国产成人久久精品网站| 麻豆高清免费国产一区| 亚洲资源最新版在线观看| 成年在线观看免费人视频草莓| 亚洲大码熟女在线观看| 四虎影永久在线高清免费| 亚洲五月午夜免费在线视频| 中文亚洲AV片不卡在线观看| 久久99精品国产免费观看| 亚洲网站视频在线观看| 四虎免费在线观看| 亚洲精品黄色视频在线观看免费资源| 亚洲av永久无码精品漫画| h视频在线免费看| 国产成人亚洲午夜电影| 亚洲色WWW成人永久网址| 在线看无码的免费网站| 亚洲AV无码专区国产乱码不卡| 久久久久国产成人精品亚洲午夜 | 成人女人A级毛片免费软件| 久久精品国产亚洲AV未满十八| 狠狠色婷婷狠狠狠亚洲综合| 久久99精品免费视频| 久久亚洲欧美国产精品| 成人午夜亚洲精品无码网站| 国产精品成人免费福利| 九九免费久久这里有精品23| 亚洲精品亚洲人成在线麻豆|