Исповедь системного администратора (многа букаф, мат)

Discussion in 'Off Topic' started by stalke, Aug 8, 2008.

  1. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    57,544
    Location:
    Tomsk, Russia
    ничего не заговариваюсь.
    я и говорю, что из реестра выгружается в чём-то двухбайтном. не уверен - wchar_t там или utf16le.
    просто раньше удивлялся, не особо акцентируясь. а теперь вот понятно стало с этими разъяснениями про то что раньше появилось - utf8 или wchar_t
     
  2. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    57,544
    Location:
    Tomsk, Russia
    Ты забыл от чего я "пылал".
    Там был апловский kext, написатый приблизительно в таком xml:
    <kext><param>PARAM1</param><value>VAL1</value> <param>PARAM2</param><value>VAL2</value> <param>PARAM3</param><value>VAL3</value> </kext>
    и менять местами теги, естественно, нельзя было.
    не удивлюсь, что там и пробелы лишние - тоже низзя.
    Я разорялся на предмет такого уёбищного использования возможностей XML - в стиле обычного текстового конфига, но нахера-то в xml-подобной обёртке.
    но самим аппловцам и программерам (rust'у например) было пофигу - "они просто юзали утилиту/либу - читающую и записывающую в kext".
    "они просто микроскопом забивали гвозди". а чо? вполне удобно же.

    А как ты в cvs будет сохранять поле, где нужно хранить кавычку? куотировать их все? а если там текст-диалог из какого-нить произведения? где сплошь кавычки?
    а вот "разделитель полей" вставлять в текстовое поле - не надо. или в ну очень редких случаях можно было б и закуотировать.
    вооо, об этом и говорю.
    а был бы спец.символ "разделитель полей" - очень много где стало бы жить сииильно проще.
     
  3. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    35,281
    Location:
    Russia
    Именно, и эскейпить саму кавычку в значениях.
    В качестве кавычки можно использовать другой символ. Малоиспользуемый.
    Если надо что-то необычное, я обычно использую символ |
     
  4. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    23,883
    Location:
    Ukraine, Kiev
    value1☺value2☺bla "bla|" bla☺12345
    value1☺value2☺bla "bla bla☺12345
    value1☺value2"☺bla bla bla☺12345
    нехай потом получатель иппется.
     
  5. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    35,281
    Location:
    Russia
    Парсить кастомные форматы руками - это интересное извращение.
    А программе пофигу какие там символы как делиметеры заданы.

    value1,value2,"bla ""bla|"" bla",12345
    value1,value2,"bla ""bla bla",12345
    value1,"value2""",bla bla bla,12345

    Все прекрасно открывается экселем.

    Даже вот такое извращение:
    Code:
    value1,value2,"bla
    ""bla|"", bla",12345
    value1,value2,"bla ""bla bla",12345
    value1,"value2""",bla bla bla,12345
    upload_2022-8-30_14-26-21.png

    А теперь выгрузи это все в xml,json или что еще и сравним размеры.
    Не, CSV по объемам только бинарные форматы могут забороть.
     
    Last edited: Aug 30, 2022
  6. soomnvR

    soomnvR Well-Known Member

    Joined:
    Feb 7, 2010
    Messages:
    9,924
    Location:
    somewhere :)
  7. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    23,883
    Location:
    Ukraine, Kiev
    Та кто ж спорит, что хороший формат если правильно записать. Хотя по инету, предпочитают гонять xml или json иногда пожатый gzip'ом.
     
  8. sharky

    sharky Well-Known Member

    Joined:
    Feb 9, 2000
    Messages:
    2,396
    Location:
    Prague, Czech Republic (Ex Mosсow, Ex Omsk, Russia
    utf8 потому и называется utf8 потому что кодируется в один байт. А Utf16 в два. Поэтому ты видишь "пробелы". А в utf8 для кириллицы будешь видеть кракозябры без пробелов. РІРѕС‚ такая РєРѕРґРёСЂРѕРІРєР°
     
    mcgru- likes this.
  9. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    35,281
    Location:
    Russia
    UTF16 мне больше нравится тем что его и случайно не выйдет спутать с ASCII.

    Особенно если это UCS-2, где нету извращений с 4 байтовыми символами, в связи с чем размер текста и в символах и в байтах заранее известен.

    Но мечты мечты... (утирает скупую слезу по ламповому Win-1251).
     
    Last edited: Aug 30, 2022
    mcgru- likes this.
  10. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    57,544
    Location:
    Tomsk, Russia
    " | " уже используется как pipe/пайпа.
    в ячейках таблицы можно располагать и шелловские команды

    а вот располагать в ячейках символы, обозначающие "разделитель полей" - вот не надо. по рукам бить. только в заквоченном виде.

    как вот только отображать "разделитель полей" в, например, браузере - не знаю.
    ну хоть бы и палками. только при копирвании - чтобы копировался не пайпа, а именно "разделитель полей/колонок".
     
  11. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    23,883
    Location:
    Ukraine, Kiev
    Сделай на джаваскрипте, что бы при клике по таблице на сайте в клипбоард вносился csv.
     
  12. Stardust

    Stardust Well-Known Member

    Joined:
    Jun 12, 2000
    Messages:
    21,380
    Location:
    Novosibirsk, Russia
    У нас с внешними аудиторами соглашение использовать разделителем символ Æ
    Пока нигде ни с чем не пересеклось (за много лет уже).
    До этого разные символы периодически встречались в наименованиях чего-либо и ломали обмен.
     
    Flk and mcgru- like this.
  13. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    35,281
    Location:
    Russia
    Неправильный это подход, рассчитывать на то что некий символ прям никогда не попадется. Ненадежный.

    Но дело ваше, да.
     
    sharky likes this.
  14. Stardust

    Stardust Well-Known Member

    Joined:
    Jun 12, 2000
    Messages:
    21,380
    Location:
    Novosibirsk, Russia
    Зато простой :)
    Они ни с чем кроме плоских таблиц не работают, хорошо хоть не в эксель грузят, MS Access используют :D
    Ну а мне проще из сиквела сохранить с настроенным разделителем да и всё.
     
  15. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    57,544
    Location:
    Tomsk, Russia
    я в линухе символ "bell" использую иногда
    который 0x07
    https://ru.wikipedia.org/wiki/Управляющие_символы

    сколько лет оно уже нахрен не нужно? лет 30? 40?
    но, блять, надо сначала UTF-256 придумать и в стандарт внести, а потом уже озаботиться о нужности всякого говна мамонта в ASCII
     
  16. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    57,544
    Location:
    Tomsk, Russia
    мне начальничек сказанул как-то раз в дискуссионном запале - "а вот ты обрабатываешь список файлов по-строчно, а это неправильно! а вдруг мне захочется имя файла записать с символом \n ?"
    захотелось въебать. тому долбоёбу, кто повадится сделать такое :)
    и, сссука, сменить ему имя и фамилию в паспорте на слова, содержащие null, который \0 в ascii. чтоп, пидарасу, жилось краще...
    ну натуральное же вредительство!
     
    Stardust likes this.
  17. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    23,883
    Location:
    Ukraine, Kiev
    Надо было сказать, что тогда это было бы что угодно - но не имя файла! Он бы еще с * и ? имя придумал.
     
  18. -Shai-

    -Shai- Well-Known Member

    Joined:
    Mar 13, 2000
    Messages:
    37,021
    Location:
    РФ
    апологетам ксеонов и игрушечек привет передает Dying Light 2
    upload_2022-8-30_20-27-44.png
     
    mcgru- likes this.
  19. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,248
    plist, а не kext.
    Plist это "properties list", сериализация некоего словаря в файл. Kext это Kernel Extension, подгружаемый модуль ядра (в простонародье "драйвер" хотя не самое правильное название.
    И да text-based xml был одним из нескольких представлений. XML это всего навсего язык программирования^H разметки, и меня реально удивляла/забавляла такая бурная реакция.
    Мне, например, глубоко похрен если кто то будет использовать подмножества языка PostScript для рисования примитивных картинок, используя всего 0.1% возможностей. Или писать на Си программу которая только умеет вводить два числа и вычислять их сумму. Я не буду считать такое использование "некошерным" или "оскверняющим высокие принципы".
     
    mcgru- likes this.
  20. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,248
    У МС, похоже, всегда была склонность к подходу "а давайте сделаем наши технологии немного несовместимыми, для того чтобы разработчики, пытающиеся использовать их на другие платформы поебались"
    Другого логического объяснения множеству фактов я просто не нахожу.
    Даже когда в очередном сотрудничестве с Эппл МС получила технологии и форматы трутайп шрифтов - первое что они сделали это "немножко изменили" стандарт, чтобы шрифты под винду не работали на той макоси тех времен.
    Сколько лет или десятков лет вижуальник под винду отказывался распознавать общепринятый и уже вошедший в стандарт тип "long long", и заставлял использовать нестандартный "_Int64t" или как он там назывался?

    Помню когда я изучал формат RTF из официальной документации МС, взял этот файл, сохранил МС Вордом для мака в RTF, открыл и увидел что микрософтовский продукт нарушает установленный Микрософтом же стандарт...
     
    mcgru- likes this.