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

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

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

    使用正則表達(dá)式識(shí)別合理的文件擴(kuò)展名

    系統(tǒng)硬件升級(jí),采用nas存儲(chǔ)設(shè)備代替原來(lái)的本地存儲(chǔ),問(wèn)題出現(xiàn)了。
    ??????用作文件存儲(chǔ)的NAS設(shè)備居然不支持中文文件名,對(duì)其他字符的支持也不好說(shuō)。
    原來(lái)的系統(tǒng)處理只把文件名進(jìn)行了轉(zhuǎn)換,沒(méi)有考慮文件擴(kuò)展名,例如,下面的文件名:
    ??????test.測(cè)試
    轉(zhuǎn)換后變成了:
    ??? 374658237937_1.測(cè)試

    在nas上根本就無(wú)法存儲(chǔ),導(dǎo)致程序執(zhí)行失敗
    ?
    解決的辦法:
    必須對(duì)擴(kuò)展名也進(jìn)行轉(zhuǎn)換,但又不能全部轉(zhuǎn)換。對(duì)于以英文作為擴(kuò)展名的文件,不作擴(kuò)展名轉(zhuǎn)換,例如xx.doc
    因此,需要使用某種方法把不合適的擴(kuò)展名找出來(lái),我現(xiàn)在的規(guī)則是,對(duì)包括下面的字符以外字符的擴(kuò)展名進(jìn)行轉(zhuǎn)換,這個(gè)規(guī)則是我查看window3的所有擴(kuò)展名后確定的:
    ??????a-z
    ??????A-Z
    ??????_
    ??????-
    ??????0-9
    ???使用下面的正則表達(dá)式:
    ??????"[^\\w\\-]
    ??????由于\w已經(jīng)包含了a-z,A-Z,0-9以及下劃線,所以只要再加上減號(hào)就可以了。
    ??? 測(cè)試用的java代碼如下:
    ?? package com.test;
    import java.util.regex.Pattern;


    public class a {

    ?static public void main(String[] argc)
    ?{
    ????
    ?? System.out.println(Pattern.compile("[^\\w\\-]").matcher("a*b").find());

    ?}
    ?
    }

    如果返回true,說(shuō)明包含規(guī)則外的字符,需要被轉(zhuǎn)換。

    posted on 2008-04-03 16:22 惡魔 閱讀(3053) 評(píng)論(0)  編輯  收藏

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 中文在线观看国语高清免费| 青娱分类视频精品免费2| 亚洲伊人久久大香线蕉| 免费在线观看你懂的| 亚洲一级毛片免费看| fc2成年免费共享视频18| 在线综合亚洲中文精品| 亚洲视频中文字幕| 亚洲中文字幕伊人久久无码| 女人18毛片特级一级免费视频 | 在线观看亚洲网站| 亚洲国产成人va在线观看网址| 亚洲欧美第一成人网站7777 | 一级成人a毛片免费播放| 羞羞视频免费网站日本| 亚洲国产精品无码观看久久| 亚洲天堂电影在线观看| 亚洲国产成人精品电影| 国产精品无码亚洲一区二区三区| 亚洲欧洲专线一区| 二个人看的www免费视频| 1000部拍拍拍18勿入免费视频下载 | 亚洲免费观看在线视频| 日韩电影免费在线观看视频| 亚洲精品国产免费| 亚洲国产成人a精品不卡在线| 日本免费高清一本视频| 亚洲午夜未满十八勿入网站2| 亚洲国产av一区二区三区| 亚洲一区二区成人| 亚洲欧洲日本天天堂在线观看| 久久精品熟女亚洲av麻豆| 久久久国产精品福利免费| 免费国产午夜高清在线视频| 我要看WWW免费看插插视频| 成人毛片免费观看视频| 亚洲精品色午夜无码专区日韩| 亚洲中文字幕无码永久在线| 国产亚洲精品xxx| 亚洲欧美日韩自偷自拍| 美女视频黄a视频全免费网站色窝|