1. 程式人生 > >自己寫的一個將指定目錄下的文字檔案集合成單獨的一個大文字檔案工具

自己寫的一個將指定目錄下的文字檔案集合成單獨的一個大文字檔案工具

今天在看《Head First 設計模式》這本書,書是好書,但是原始碼寫的太碎了,並且每個原始碼檔案都只有幾行,看起來很不方便。於是便想將每章的所有原始碼收整合單獨的一個大文字檔案中,方便閱讀。

下面是我用Java寫的一個小程式,用python的話應該更簡單,但是懶得折騰了。

import java.io.*;


public class TextFileCollector{

	public static void main(String[] args) {
		
		//要收集的資料夾路徑
		String srcFolder = "D:/JavaApp/headfirst設計模式原始碼/observer/WeatherStation";
		//要收集的檔案字尾
		String suf = ".java";
		//目標檔案所在的資料夾
		String dstFolder = "D:/JavaApp/acm/";
		//目標檔名稱
		String dstFile = "2.java";
		
		//得到目標檔案所在的資料夾的檔案列表
		String[] fileList = new File(srcFolder).list(new MyFilenameFilter(suf));
		
		TextFileCollector tc = new TextFileCollector();
		for(String name : fileList)
		{
			tc.changeTxtFile(srcFolder, name, dstFolder, dstFile);
		}
	}
	
	/*
	 * 將源文字檔案的內容拷貝到指定的目標檔案。
	 * srcFolder:原始檔所在的資料夾路徑
	 * srcFile:原始檔名稱
	 * dstFolder:目標檔案所在的資料夾路徑
	 * dstFile:目標檔名稱
	 * */
	public void changeTxtFile(String srcFolder, String srcFile, String dstFolder, String dstFile)
	{
		FileReader fr = null;
		FileWriter fw = null;
		//boolean append = true;
		try{
			fr = new FileReader(new File(srcFolder+"/"+srcFile));
			fw = new FileWriter(new File(dstFolder+"/"+dstFile), true);
			BufferedReader br = new BufferedReader(fr);
			String row;
			fw.append("//"+srcFile+"\n");
			while((row=br.readLine()) != null)
			{
				fw.append(row+"\n");
			}
			fw.write("\n\n");
			fr.close();
			fw.close();
		}
		catch(FileNotFoundException e) 
		{  
			e.printStackTrace();  
		} 
		catch (IOException e)
		{  
			e.printStackTrace();  
		}
	}

}
class MyFilenameFilter implements FilenameFilter
{
	private String suffix;
	public MyFilenameFilter(String suffix)
	{
		this.suffix = suffix;
	}
	@Override
	public boolean accept(File dir, String name) {
		// TODO Auto-generated method stub
		boolean flag = name.endsWith(suffix);
			
		return flag;
	}
	
	
}


相關推薦

自己一個指定目錄文字檔案集合單獨一個文字檔案工具

今天在看《Head First 設計模式》這本書,書是好書,但是原始碼寫的太碎了,並且每個原始碼檔案都只有幾行,看起來很不方便。於是便想將每章的所有原始碼收整合單獨的一個大文字檔案中,方便閱讀。 下面是我用Java寫的一個小程式,用python的話應該更簡單,但是懶得折騰了

shell腳本第二篇——指定目錄大於200K的文件移動到/tmp

-i .sh ext 輸入 for ont 文件移動 print vim shell腳本第二篇——將指定目錄下大於200K的文件移動到/tmp下# vim /tmp/files.sh #!/bin/bash #將指定目錄下大於200K的文件移動到/tmp下 read

指定目錄檔案打tar包,不包括此目錄

package com.jttx.other.jtp; import org.apache.commons.compress.archivers.tar.TarArchiveEntry; import org.apache.commons.compress.archivers.tar.TarArch

一個當前目錄HEX檔案的第一行資料刪除的程式

為什麼要寫這樣一個函式 在使用SoftConsole開發M3程式時,生成的hex檔案,必須要把第一行資料刪除,才能在Libero中使用,所以寫了這個小工具,這是2.0版本了,第一版是直接刪除第一行資料,有可能會導致誤操作。 實現原理 主要使用到了bat批處理命令

個複製指定目錄指定格式檔案指定目錄的方法

package com.test1; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class CopyTest {     pr

獲取指定目錄指定副檔名的檔案(包含子目錄中的),把這些檔案的絕對路徑寫入到一個文字檔案中。

題目: 獲取指定目錄下,指定副檔名的檔案(包含子目錄中的),把這些檔案的絕對路徑寫入到一個文字檔案中。 思路: 1.必須深度遍歷 2.要在遍歷的過程中進行過濾,將符合條件的內容儲存到容器中 3.對容器中的內容進行遍歷並將絕對路徑寫入到檔案中 程式碼: import java.io

linux復制指定目錄的全部文件到另一個目錄

建議 必須 測試 成對 st3 其中 完成 所有 鏈接 linux復制指定目錄下的全部文件到另一個目錄中復制指定目錄下的全部文件到另一個目錄中文件及目錄的復制是經常要用到的。linux下進行復制的命令為cp。假設復制源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將di

王權富貴:讀取指定目錄的所有檔名(不保持字尾)文字處理

import os import os.path as osp rootdir = "C:\YSRVOC\VOCdevkit\VOC2007\JPEGImages" file_object = open('C:\YSRVOC\VOCdevkit\VOC2007\ImageSets\Main/tr

Ubuntu16 複製一個檔案指定目錄

轉載請註明出處:http://blog.csdn.net/feibendexiaoma/article/details/73739319 比如把桌面上的studio.zip複製到/home/androidstudio目錄下: (1) 在桌面上開啟終端,輸入sudo su (2)

android 建立檔案和建立資料夾、assets檔案複製到指定目錄

1.獲取APP當前目錄路徑: public String getPath(){ File fileDire = getFilesDir();//獲取../data/應用的包名/fil

linux複製指定目錄的全部檔案到另一個目錄中,linux cp 資料夾

linux複製指定目錄下的全部檔案到另一個目錄中 複製指定目錄下的全部檔案到另一個目錄中 檔案及目錄的複製是經常要用到的。linux下進行復制的命令為cp。 假設複製源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將dir1下所有檔案複製到dir2下了 如果dir2目

linux 複製指定目錄的全部檔案到另一個目錄中,linux cp 資料夾

linux複製指定目錄下的全部檔案到另一個目錄中複製指定目錄下的全部檔案到另一個目錄中檔案及目錄的複製是經常要用到的。linux下進行復制的命令為cp。假設複製源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將dir1下所有檔案複製到dir2下了如果dir2目錄不存在,則

根據提供的檔名文字,查詢指定目錄的該檔案,找到後複製到指定資料夾--bash

#!/bin/bash #by [email protected] #根據提供的檔名文字,查詢指定目錄下的該檔案,找到後複製到指定資料夾。 filecontent=`cat name50.

python處理好的影象儲存到指定目錄

原始影象絕對路徑的影象名儲存在一個txt檔案中,下面的程式實現的功能是按照txt檔案的順序,依次將圖片讀取然後進行處理,最後將處理之後的影象儲存在指定的路徑下: # Read in the image to be detected # 原始影象均儲存在binaries

檔案移動到指定目錄,並且加上時間戳進行重新命名

def add_timastamp(self): ''' return timestamp mark''' stamp = time.strftime("%Y%m%d%H%M%S",time.localtime())

android:assets目錄檔案(資料夾)放置到記憶體卡指定目錄

最近做一個OCR識別圖片文字的功能,閒暇之餘,提取專案中涉及的方法供大家參考. 這個方法是將assets下的指定檔案或資料夾,放置到sd的指定目錄下,程式碼中都有註釋. 當然我們也可以探討探討OCR.

解決:Android使用自帶sqlite開發時,apk中建立的資料庫外部的程序是沒有許可權去讀/的,而且無法如何讀取指定目錄的db檔案

SQLiteOpenHelper是Android框架為我們提供的一個非常好的資料庫開啟、升級與關閉的工具類。但是這個工具類會自動把db檔案建立到“ /data/data/com.*.*(package name)/” 目錄下,這麼做可能是與Android檔案系統的設計思路

oracle—指定使用者所有表的查詢許可權賦給另一個使用者

一、建立新使用者user2。 二、在指定使用者(user1)下執行以下語句: select   'grant select on user1.' || t.table_name  || ' to user2;'  from user_tables t 輸出指令碼,複製指令碼

復制指定目錄的全部文件到另一個目錄

tar linu 文件的復制 假設 過程 inux 怎樣 linux下 directory linux下文件的復制、移動與刪除命令為:cp,mv,rm 復制指定目錄下的全部文件到另一個目錄中假設復制源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將dir1

創建目錄並且數據寫入txt文件、刪除指定目錄的文件

sts mkdir != 思路 字符 函數 ech edi one 要求:將用戶uid批量導出,並且每5000個放到一個txt文件中,使用英文逗號分隔用戶uid;思路:自定義一個文件夾,在每次導出的時候,先將這個文件夾中的文件刪除,之後再重新導出新的文件,使用日期區分是否導