Python實現多個txt文件進行合併成一個文件

Python實現多個文件進行合併成一個文件

比如在開發有多個小組在做增量sql文件的時候,可以用到此方案進行合併一個SQL,然後到升級的過程中進行執行一個文件即可

# -*- coding:utf-8 -*-  
import os

# 解決編碼轉換函數
def decodex(val):
    try:
        string = val.decode('gb2312')
    except:
        string = val.decode('utf-8')
    return string
    
#__main__方法
if __name__ == '__main__':

    #讀取這個路徑的文件,比如這個路徑包含了這些文件【a.txt,b.txt,c.txt,d.txt,e.txt】
    mergefiledir = r'C:\Users\Desktop\book' 
     
    #獲取當前文件夾中的文件名稱列表  
    filenames = os.listdir(mergefiledir) 
     
    #打開當前目錄下的merge.txt文件,如果沒有則創建,python不指定編碼寫入文件爲GB2312
    file = open('merge.txt','w',encoding='utf-8')
    
    #存放合併文件的路徑.
    targetdir = mergefiledir + '\\'
    
    try:
        #先遍歷所有文件名  
        for filename in filenames:  
            #組裝新的文件路徑
            newpath = targetdir + filename
            
            #遍歷單個文件,讀取行數,splitlines函數解決不換行的讀取
            for line in open(newpath,'rb').read().splitlines():
                file.writelines(decodex(line)+'\n')
    except Exception as e:
        #處理異常
        print(f'Write Merge Exception:{e}')
        pass
        
    #關閉文件  
    file.close()
    
    print(f'do merge finish')

目的與出發點

記錄自己的經歷與問題如何處理的,希望能幫到有些小白,可以 直接拿去使用。 本人比較喜歡分享與學習,這樣可以有助自己的成長,畢竟我以前不是搞Python的。高手也別噴,純粹是爲了好玩學習去用它。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章