<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
    垃圾  回復  更多評論
      
    主站蜘蛛池模板: 91久久成人免费| 亚洲视频免费在线播放| 国产桃色在线成免费视频 | 99在线观看免费视频| 国产精品日本亚洲777| 亚洲国产av美女网站| 国产精一品亚洲二区在线播放 | 美女黄网站人色视频免费| 亚洲国产福利精品一区二区| 中文亚洲AV片不卡在线观看| 美女黄网站人色视频免费国产| 91在线老王精品免费播放| 日韩精品无码免费专区网站| 阿v免费在线观看| 亚洲国产精品无码中文lv| 亚洲精品视频观看| 国产区图片区小说区亚洲区| 91亚洲性爱在线视频| 亚洲av永久无码精品漫画 | 国产亚洲精品91| 亚洲av成人一区二区三区观看在线 | 国产AV无码专区亚洲AVJULIA| 免费少妇a级毛片| 国产乱弄免费视频| 国产精品国产自线拍免费软件| 成年女人毛片免费视频| 亚洲视频在线免费播放| 精品国产无限资源免费观看| 最刺激黄a大片免费网站| 免费视频精品一区二区三区| 中文字幕无码免费久久| 国内永久免费crm系统z在线| 国产在线观看免费av站| 亚洲AV无码专区在线亚| 亚洲成人福利在线| 亚洲av无码一区二区三区天堂古代| 亚洲美女人黄网成人女| 亚洲成aⅴ人片在线影院八| 亚洲区视频在线观看| 亚洲日日做天天做日日谢| 国产成人精品日本亚洲专区6|