Автор Тема: IniRead не видит обрамляющих кавычек  (Прочитано 4368 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн asdf8 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 564
  • Репутация: 152
    • Награды
Win XP sp3
AutoIt3 v3.3.2.0
IniRead не видит обрамляющих кавычек, а IniReadSection - видит.

Код: AutoIt [Выделить]
#Include <Array.au3>

$Ini = @ScriptDir & '\file.ini'

IniWrite ( $Ini, "section", "key1", '''val''ue''' )
IniWrite ( $Ini, "section", "key2", '"val"ue"' )
Sleep(250)
ConsoleWrite(IniRead($Ini, "section", "key1", "NotFound") & @LF)
ConsoleWrite(IniRead($Ini, "section", "key2", "NotFound") & @LF)
$var = IniReadSection($Ini, "section")
_ArrayDisplay($var)
 

« Последнее редактирование: Январь 13, 2010, 14:35:38 от asdf8 »

Русское сообщество AutoIt

IniRead не видит обрамляющих кавычек
« Отправлен: Январь 13, 2010, 13:07:19 »

Оффлайн snoitaleR [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 854
  • Репутация: 223
  • Пол: Мужской
    • Награды
Re: IniWrite не видит обрамляющих кавычек
« Ответ #1, Отправлен: Январь 13, 2010, 13:13:07 »
asdf8
Если я правильно понял, то нужно, чтобы текст value записывался в INI-файл в кавычках:

Код: AutoIt [Выделить]
#Include <Array.au3>

$Ini = @ScriptDir & '\file.ini'

IniWrite ( $Ini, "section", "key1", '"value"' )
IniWrite ( $Ini, "section", "key2", '"value"' )
Sleep(250)
ConsoleWrite(IniRead($Ini, "section", "key1", "NotFound") & @LF)
ConsoleWrite(IniRead($Ini, "section", "key2", "NotFound") & @LF)
$var = IniReadSection($Ini, "section")
_ArrayDisplay($var)
 

Главное в жизни человека - это отношение...

Оффлайн asdf8 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 564

  • Автор темы
  • Репутация: 152
    • Награды
Re: IniWrite не видит обрамляющих кавычек
« Ответ #2, Отправлен: Январь 13, 2010, 13:38:51 »
snoitaleR,
записывается то с кавычками, а читает IniRead - одно, IniReadSection - другое.

Русское сообщество AutoIt

Re: IniWrite не видит обрамляющих кавычек
« Ответ #2 Отправлен: Январь 13, 2010, 13:38:51 »

Оффлайн SyDr [?]

  • Локальный модератор
  • *
  • Сообщений: 650
  • Репутация: 157
  • Пол: Мужской
  • Сидра
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: IniWrite не видит обрамляющих кавычек
« Ответ #3, Отправлен: Январь 13, 2010, 13:39:02 »
Оффициальной спецификации Ini-файлов не существует.
В неофицальной спецификации указано, что String values may optionally be enclosed in quote characters (""", decimal code 34). String values beginning or ending with spaces, or containing commas or semicolons, must be enclosed in quotes.

То есть IniReadSection не должна помещать в массив эти кавычки.
Хотя да, функции должны вести себя одинаково.

Оффлайн snoitaleR [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 854
  • Репутация: 223
  • Пол: Мужской
    • Награды
Re: IniWrite не видит обрамляющих кавычек
« Ответ #4, Отправлен: Январь 13, 2010, 14:26:15 »
asdf8
Я думаю, название темы должно содержать не IniWrite, а IniRead...

Русское сообщество AutoIt

Re: IniWrite не видит обрамляющих кавычек
« Ответ #4 Отправлен: Январь 13, 2010, 14:26:15 »

Оффлайн asdf8 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 564

  • Автор темы
  • Репутация: 152
    • Награды
Re: IniWrite не видит обрамляющих кавычек
« Ответ #5, Отправлен: Январь 13, 2010, 14:32:11 »
Если бы действительно имелось в виду, что обрамляющие кавычки и не должны читаться в ini-файлах, то они, по идее, не должны были бы и записываться через IniWrite

PS точно - с названием просмотрел

Оффлайн SyDr [?]

  • Локальный модератор
  • *
  • Сообщений: 650
  • Репутация: 157
  • Пол: Мужской
  • Сидра
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: IniRead не видит обрамляющих кавычек
« Ответ #6, Отправлен: Январь 13, 2010, 18:00:02 »
Он кавычки и не записывает. Он их записывает в случае, если вам это надо:
Цитировать
When writing a value that is quoted, the quotes are stripped. In order to write the quote marks to the value, you must double up the quoting. For example: ""This is a test"" will produce "This is a test" in the file.

Русское сообщество AutoIt

Re: IniRead не видит обрамляющих кавычек
« Ответ #6 Отправлен: Январь 13, 2010, 18:00:02 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
10 Ответов
7748 Просмотров
Последний ответ Сентябрь 07, 2015, 16:38:07
от joiner
7 Ответов
4382 Просмотров
Последний ответ Май 20, 2016, 23:19:36
от Alofa
7 Ответов
1336 Просмотров
Последний ответ Август 26, 2016, 17:31:37
от kolosov
2 Ответов
1101 Просмотров
Последний ответ Март 16, 2017, 23:37:28
от Vitorio
1 Ответов
548 Просмотров
Последний ответ Май 08, 2017, 12:45:59
от inververs
12 Ответов
1401 Просмотров
Последний ответ Октябрь 14, 2017, 12:12:16
от InnI
1 Ответов
1459 Просмотров
Последний ответ Май 25, 2018, 12:43:00
от InnI
1 Ответов
158 Просмотров
Последний ответ Октябрь 18, 2018, 17:29:35
от InnI
14 Ответов
474 Просмотров
Последний ответ Март 19, 2019, 01:39:12
от CreatoR
0 Ответов
98 Просмотров
Последний ответ Май 16, 2019, 00:34:33
от mrPuh