![]() |
Модераторы: mihanik |
![]() ![]() ![]() |
|
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
Работаю над автоматизацией создания ворд документа из xml
В некоторых случаях использую вордовские поля (field) для обработки и показа текста. Иногда из xml документа приходит строка, содержащая двойные кавычки. Одинарные тоже попадают, но с ними проблем нет, а вот с двойными есть. Если мне надо создать букмарку (их можно использовать как переменные внутри документа), то я пишу {SET varName "value"}. Потом, при вызове этой букмарки ({varName}) я получу ее значение, т.е. value Если же в значении есть двойная кавычка, то все содержимое после нее отрезается. Вот пример проблемы: 1. ![]() 2. ![]() 3. ![]() На деле, мне надо использовать другое поле, но там такое же поведение в кавычками. Это поле я использовал для демонстрации проблемы. Как мне добиться того, чтобы содержимое, какие бы в нем символы ни были, обрабатывалось полностью? |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Кавычки, которые составляют содержимое, следует удваивать. Обрамляющие - не трогай.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
То есть вместо двойной кавычки использовать две одинарные вместе? Или две двойные вместе? Я попробовал с двумя двойными - все равно отрезает... Две одинарные взамен одной двойной - может это и выход. Но выглядят они немного иначе. В зависимости от шрифта различаются от двойных сильнее или слабее.. Пойдет только на крайний случай. |
|||
|
||||
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
не работает, может я что не так понял, или кавычки не те?
![]() |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Именно. Если не срабатывает - попробуй стандартный квотинг обратным слешем. Если и это не поможет - попробуй почитать справку по теме. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
![]() Остаются бекслеши, но кавычки стали пролазить. Я это пробовал, но че-то не написал на форуме. Может какой глобальный параметр управляет тем, нужно ли убирать бекслеши? |
|||
|
||||
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
на форуме майкрософта посоветовали вместо кавычек вставлять { QUOTE 34} - работает. Только мне не подходит :(
|
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Мне на самом деле непонятно, почему нужно обязательно переть эти кавычки туда, где они порождают кучу геморроя. Имена букмарков вполне потерпят, если ты заменишь проблемный символ на что-то ещё.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
nicotin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.1.2010 Репутация: нет Всего: нет |
Приложение состоит из механизма преобразования xml в wordml. Одна часть системы трансформирует xml в wordml на основе информации и стилях из второй части - шаблона, который есть специальный вордовский документ. Так вот предпочтительно что-то менять именно в шаблоне, нежели в трансформере. Тем более не допускается какой-либо препроцессинг. Поэтому я сначала поискал способы в ворде это обойти, но видимо, буду править трансформер, чтобы кавычки не лезли из исходного xml
Это сообщение отредактировал(а) nicotin - 15.11.2010, 12:57 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Работа с MS Office" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Работа с MS Office | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |