Показват се публикациите с етикет python. Показване на всички публикации
Показват се публикациите с етикет python. Показване на всички публикации

11 септември, 2008

Големи текстови файлове в редактора...


Сблъсках се със следния проблем.
Имам разни относително големи текстови файлове - по няколко МБайта.
Като ги отварям с някой текстов редактор, в случая КАТЕ ...редакторът среща определени трудности.
Проблемът се оказва...че текстовият файл няма НИТО един CR или LF, всичко е на един ред.
Уточнение: вътре има XML
За машината да го парсва няма проблем, но ако се наложи да хвърлите по едно око на текста или пък да търсите някакъв стринг в него, па макар и с grep ..... нищо на става. Естествено - това което търсите ще намерите на ред номер 1 (и единствен...)
Добре, че в Python, а може би и в другите езици, има една pretty функция - toprettyxml()
И с тези няколко реда, написани на Python се решава проблемът:


outf = open(output_file_name,"w)
xmldoc = xml.dom.minidom.parse(input_file_name)
new_xml = xmldoc.toprettyxml(encoding="utf-8")
outf.write(new_xml)
outf.close()


В резултат новият файл е читаем и по-удобен за работа, има си символите за нов ред и съответното подравняване и отместване на елементите. Но защо текстовите редактори се затрудняват с големи файлове, които нямат CR LF?? Не знам.....

10 октомври, 2007

За "значението" на незначещите нули

За малко да настъпя мотиката...
пример на Python
извличам стойността на една променлива от MySql, стойността и е например 020 (полето е varchar)
print на променливата....и на екрана какво излиза?

Ако отговорите 16 - правилно!
Ама аз не съобразих, че този запис означава, че числото е осмично и си очаквах отговор 20.
Следователно незначещите нули понякога са си много "значещи"