yxhxj2006

          常用鏈接

          統(tǒng)計(jì)

          最新評(píng)論

          Java讀取目錄下Txt文本

            /**
               * 功能:Java讀取目錄下txt文件的內(nèi)容
               * 步驟:先獲得目錄句柄,如果是文件直接讀取文件,如果是目錄,繼續(xù)迭代處理
               * 
          @param directoryPath
               
          */
              public static void readTxtDirectory(String directoryPath){
                  File dir = new File(directoryPath);
                  if(dir.isFile()) {           //讀取文件
                      readTxtFile(directoryPath);   
                  } else if(dir.isDirectory()) {    //讀取目錄
                      File[] files = dir.listFiles();
                      for(int i=0;i<files.length;i++){
                          System.out.println((files[i].isDirectory()?"目錄 :":"文件 :")+files[i].getName());
                          if(files[i].isFile()) {
                              readTxtFile(files[i].getAbsolutePath());
                          } else {
                              readTxtDirectory(files[i].getAbsolutePath());
                          }
                      }
                  } else { 
                       System.out.println("路徑不存在!");
                  }
              }
              
               /**
               * 功能:Java讀取Txt文件的內(nèi)容
               * 步驟:1:先獲得文件句柄
               * 2:獲得文件句柄當(dāng)做是輸入一個(gè)字節(jié)碼流,需要對(duì)這個(gè)輸入流進(jìn)行讀取
               * 3:讀取到輸入流后,需要讀取生成字節(jié)流
               * 4:一行一行的輸出。readline()。
               * 備注:需要考慮的是異常情況
               * 
          @param filePath
               
          */
              public static void readTxtFile(String filePath){
                  try {
                          String encoding="GBK";
                          File file = new File(filePath);
                          if(file.isFile() && file.exists()){ //判斷文件是否存在
                              InputStreamReader read = new InputStreamReader(
                              new FileInputStream(file),encoding);//考慮到編碼格式
                              BufferedReader bufferedReader = new BufferedReader(read);
                              String lineTxt = null;
                              while((lineTxt = bufferedReader.readLine()) != null){
                                  lineTxt = lineTxt.trim();
                                  if(lineTxt.length() > 0) {
                                      String regEx = "[' ']+"; // 一個(gè)或多個(gè)空格  
                                      Pattern p = Pattern.compile(regEx);  
                                      Matcher m = p.matcher(lineTxt);
                                      String[] txtArray = m.replaceAll(";").trim().split(";");
                                      if(txtArray.length == 6 && txtArray[0].length() == 15) {
                                          System.out.println(lineTxt);
                                      }    
                                  }
                              }
                              read.close();
                          } else {
                              System.out.println("文件不存在!");
                          }
                  } catch (Exception e) {
                      System.out.println("讀取文件內(nèi)容出錯(cuò)");
                      e.printStackTrace();
                  }
              }

          posted on 2013-11-21 19:24 奮斗成就男人 閱讀(266) 評(píng)論(0)  編輯  收藏


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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 通道| 微山县| 商水县| 寿阳县| 稻城县| 鄂州市| 绥棱县| 乌鲁木齐县| 尖扎县| 沅陵县| 湄潭县| 吉首市| 日照市| 吉安市| 扎赉特旗| 洮南市| 铜陵市| 建始县| 柳州市| 英山县| 通榆县| 太白县| 铜梁县| 开化县| 宾川县| 金溪县| 西昌市| 霍林郭勒市| 承德市| 明溪县| 错那县| 唐海县| 青浦区| 泸溪县| 思茅市| 岐山县| 定边县| 铜川市| 美姑县| 合川市| 上高县|