Конвертиране на множество текстови файлове в UTF-8 (без BOM) Notepad++?

Websolut

Well-Known Member
На последък ми се налага често да конвертирам кодировката на множество текстови файлове и от няколко дни се моря с тази задачата да автоматизирам процеса,но все нещо ми убягва.
Спрях се на варианта Notepad++ + Python Script plugin.
Следвам инструкциите от ТУК и ТУК,но нищо не се получава,явно нещо пропускам.
Пробвах и с макроси и там нищо.
Ако някой разбира от Питони:) ще се радвам,ако удари едно рамо,файловете са текстови в различни кодировки и php формат,целта е да се конвертират много файлове едновременно.
 
От: Конвертиране на множество текстови файлове в UTF-8 (без BOM) Notepad++?

По принцип става с Notepad++, обаче само с настройване на опцийте при мен не стана.
Какво направих?
Направих да запазва в UTF-8 (без BOM) добавих по-един символ във всички файлове, после го изтрих и като ме попита за save като ги затваряхс ctrl+w, давах yes и постигнах желаният резултат. Не казвам, че е най-добрият вариант но при мен стана.

Успех.
 
От: Конвертиране на множество текстови файлове в UTF-8 (без BOM) Notepad++?

Да де ама като имаш едни 100-500 файла и трябва да си играеш яко пак ,а с Питона става отваря всичко прави нещо и на края кодировката си е същата някъде в кода бъркам или пък версията не съвпада с кода не знам.
Тва може би има начин и с макрос да се направи,но при мен не става по стандартния начин.

По принцип би трябвало да стане с този елементарен код:

import glob
for f in glob.glob("C:/Temp/*.php"):
notepad.open(f)
notepad.runMenuCommand("Encoding", "Convert to UTF-8 without BOM")
notepad.save()
notepad.close()


,но не става,файловете са в посочената директория,отваря ги прави нещо сейфва ги и нищо пак са си с различна кодировка,може би трябва да се окаже в кода,че са с различна кодировка,четох,четох по форумите и нищо не измъдрих:)
 
От: Конвертиране на множество текстови файлове в UTF-8 (без BOM) Notepad++?

Ако имаше Mac щеше да използваш командата textutil за целта. Но под Windows/Linux и Mac може да използваш и командата iconv:
iconv -f LATIN1 -t UTF8 filename

Ако не те мързи намери ме по skype - peternikolow (иконата ми е като на Finder) съм и ми прати 1 файл да ти го обърна.
 
От: Конвертиране на множество текстови файлове в UTF-8 (без BOM) Notepad++?

Оказа се,че тази програмка конвертира правилно само от ANSI тка,че се наложи първо да конвертирам всичко в ANSI с ето тази Руска разработка:) и след това с UTFCast и стана идеално:mrgreen:,може би има и други по-добри варианти но безплатно е така
 

Горе