Comments: |
А писать отработку стапицот возможных ошибок в конфиге и потом отлаживать это все на защиту от дурака?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 06:59 pm |
---|
| | | (Link) |
|
каких? как этому помогает чужая библиотека?
всякий эскейпинг, всякая хуйня, кажется что всё ок, а потом оно выстрелит тебе в ногу
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 07:56 pm |
---|
| | | (Link) |
|
зачем юзер полез в инишки, не зная, что там писать? юзеру дали окно настроек — настраивай. полез в инишки — согласился с тем, что стреляешь себе в ногу.
всё просто: инишка состоит из имени секции в квадратных скобках, строк вида «key=value», пустых строк и строк, начинающихся с ';', которые являются комментариями. если там есть что-то ещё — сам себе идиот, не надо было лично туда лазить, а надо было позвать кого-то с рабочим мозгом. there are no user-serviceable parts inside!
ну смотря кто юзер и как юзает вдруг эта инишка экспортится, и там знаки равенства в ключах(я работаю с csv например и там дохуя такого говна, подозреваю что в ini так нельзя) или имена секций экзотические, с квадратными скобками или ';' и при этом всё валидно заэскейплено
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 08:57 pm |
---|
| | | (Link) |
|
НЕТ в инишках искейпов. ВООБЩЕ НЕТ. никаких. поэтому ничего там «валидно заэскейплено» быть не может.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 09:13 pm |
---|
| | | (Link) |
|
«Some implementations». удачи пояснять виндоюзеру, почему он вместо «хуй\пизда» должен писать «хуй\\пизда».
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 09:14 pm |
---|
| | | (Link) |
|
p.s. написать авторам про баг. если не желают чинить — выкинуть нахуй говнософт, там ВСЁ из багов состоит, и писано ублюдочными мудаками.
ну вот на википедии вижу ещё, что там кавычки есть, до них можно доебаться вот кавычки будут в распаршенной строке или нет? и если нет, то как сделать чтобы были? (а если будут то нахуй такие примеры в википедии?) http://en.wikipedia.org/wiki/INI_file#Quoted_valuesserver=192.0.2.62 file="payroll.dat" опять some implementations, но эта строчка намекает, что хз чего ожидать The standard Windows function GetPrivateProfileString supports this, and will remove quotation marks that surround the values. винда конечно говно, но хули делать, а библиотека может включает в себя воркаранунды для всей этой байды в общем не надо в ini экспортить, пиздец какой-то, если самому конфиги писать то окей конечно, можно и парсер написать
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 09:36 pm |
---|
| | | (Link) |
|
ты, конечно, изначально нашёл охуительный источник — википедию.
и вообще, зачем «в ини экспортить», что это, откуда появилась такая наркоманская мысль? я ещё могу понять, когда используют csv: какой-никакой, а формат для обмена. но обмениваться инишками — это даже ниже днища от днища вообще.
ну ок, не "в ини экспортить", сторонние конфиги например от неизвестной софтины обрабатывать
если работать со сторонними конфигами, парсер нужен как среднее арифметическое ебанутых реализаций если только ты пишешь конфиг, то подразумеваемый ini ок если сохранять конфиг из ui, то ini тоже ок, если нормально валидировать данные в ui
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 21st, 2015 - 07:12 pm |
---|
| | | (Link) |
|
эй, это же совсем другая задача — чужие файлы читать. не ясно, правда, зачем… %-)
дык как раз проблема в том что задача не поставлена и каждый её понимает в силу своей профессиональной деформации если это какой-то утилитарный локальный файл(или файл для выгрузки), то там можно что угодно делать и парсить как хочешь а если файл внешний, то подразумевается что придется пожрать говна с альтернативными реализациями, и это сразу надо учитывать
ну а внешние конфиги парсить, наверное, надо, когда какое-нибудь говно автоматизируешь
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 21st, 2015 - 07:44 pm |
---|
| | | (Link) |
|
да в жопу их парзить, надо только выяснить, первое появление ключа софтина берёт или последнее. а потом тупо дописывать свои изменения в начало файла или в конец файла. %-)
У тебя крайне ограниченные запросы, под такое можно и dummy-парсер.
Только нахер не нужна такая программа, которая не проверяет входные данные на корректность.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 10:46 pm |
---|
| | | (Link) |
|
отлично проверяет. я формат инишки описал, проверок там минимум. при попытке засунуть какую-нибудь хуйню инишка выкидывается в мусорку целиком, потому что её явно делал дегенерат, лучше ему не доверять совсем.
дали гуй? щёлкай там кнопочками до усрачки. а дальше не лезь, если идиот, жизнь идиота тяжела и полна опасностей.
From: | (Anonymous) |
Date: | January 22nd, 2015 - 12:48 pm |
---|
| | | (Link) |
|
ее могли писать пять разных юзеров, четыре из которых - кандидаты наук, а один - мудак.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 22nd, 2015 - 06:46 pm |
---|
| | | (Link) |
|
вот так один маленький мудак способен доставить людям много больших неприятностей.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 20th, 2015 - 10:49 pm |
---|
| | | (Link) |
|
p.s. вот я же не лезу, например, с отвёрткой в телевизор. даже не смотря на то, что я считаю себя дохуя умным — всё равно не лезу. мне дали гуй — я в нём щёлкаю. а под капотом там нет частей, которые нуждаются в моём внимании.
From: | (Anonymous) |
Date: | January 22nd, 2015 - 12:10 am |
---|
| | | (Link) |
|
Инишка испортилась при копировании, твои действия
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | January 22nd, 2015 - 12:17 am |
---|
| | | (Link) |
|
возьму из бэкапа. а тебе встречный вопрос: напали марсианцы и требуют выдать им бгрвузгль. твои действия?
naxuja? i prichom zdesj zastita ot duraka? -- eto drugoj urovenj realizacii -- parser etogo ne delajet nikakoj i nikogda.
From: | (Anonymous) |
Date: | January 21st, 2015 - 12:54 am |
---|
| | | (Link) |
|
в windows хорошо, всё и так уже есть
From: | (Anonymous) |
Date: | January 21st, 2015 - 11:26 pm |
---|
| | | (Link) |
|
интересно то, что те инишки были созданы когда-то для того, чтобы можно было софт скорее конфигурить. причем конфигурили поведение софта (переменные) отнюдь не девелоперы, а узкоспециализированные граждане. отсюда и человеческий фактор. поэтому и были созданы мегатонны либ, чтобы снять проебы девелоперов. | |