Last active
December 17, 2021 12:09
Revisions
-
Александр Д. Повод revised this gist
Dec 17, 2021 . No changes.There are no files selected for viewing
-
Александр Д. Повод renamed this gist
Dec 17, 2021 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewing
File renamed without changes. -
Александр Д. Повод created this gist
Dec 17, 2021 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,42 @@ # Толкачев мне сразу непонятно мне объяснил зачем менять эту дату, подумал о дате на текущий момент # потому и стал выводить сегодняшнюю дату from datetime import datetime today = datetime.now().strftime('%m/%d/%Y %H:%M:%S') # Как цикл написал, то и понял что это необходимо GARM # Который по дефолту принимает файл с необходимым форматом даты (со временем понятно) import os # chardet - класс по определению кодировки, а UniversalDetector это уже функция, которая нам и поможет # вернуть словарь с кодировкой, языком... from chardet.universaldetector import UniversalDetector # Такой формат был... itwas = '17/01/1970' # dd/mm/YY # На этот необходимо нам заменить hasbecome = '01/17/1970' # mm/dd/YY # Путь к директории со спектрами... mypath = r'd:\ATOMTEX Chat\Download\tolkachev@atomtex.com\19700117_033725' # Имя файла для проверки кодировки namefile = 'spec_19700117_033739.spe' enc = UniversalDetector() with open(mypath + f'\{namefile}', 'rb') as flop: data = flop.read() for line in flop: enc.feed(line) if enc.done: break enc.close() # Переменная с кодировкой файла (строчный формат!) encoding = enc.result['encoding'] # результат = UTF-16 (default - UTF-8) # print(enc.result['encoding']) for item in os.listdir(mypath): ''' В этом теле цикла мы проверяем заканчивается ли наш файл такими-то символами (с форматом файла проще - он у всех одинаковый, либо начало -- тогда необходимо указать усечение по строке в функции endwith('spec_', 5), по дефолу -- длина строки (имя файла)) Считываем по индексу файл, меняем переменные, записываем. ''' if item.endswith(".spe"): with open(mypath + f'\{item}', 'r', encoding = encoding) as file: data = file.read() replacedata = data.replace(itwas, hasbecome) with open(mypath + f'\{item}', 'w', encoding = encoding) as file: file.write(replacedata)