|
|
#1 |
|
Участник
|
Всем привет!
Мне необходимо преобразовать данные любого типа из контейнера в стринг (в контейнере есть данные в произвольном порядке - дата, целое число, число с плавающей запятой, стринг ). Функция Any2Str не работает, хотя в документации указанно что в качестве параметра могут быть данные любого типа. Пример (контейнер для простоты исключен): str ss; ; ss= Any2Str(1423512345); // Целое число info(ss); ss= Any2Str('1423512345'); //Стринг info(ss); ss= Any2Str(1423512345.34125); // Число с плавающей запятой info(ss); Посоветуйте, пожалуйста, как быть в данной ситуации. |
|
|
|
|
#2 |
|
Участник
|
Оно и понятно. Что должно быть строкой для Enum'а - индекс, название элемента или метка?
Попробуйте strFmt('%1', value). Это чуть получше будет, чем any2str(). |
|
|
|
|
#3 |
|
Участник
|
Мдяя.... интересное описание в помощи для этой ф-ии:
Converts object to the equivalent text string. object can be of almost any data type. Useful output is only guaranteed for input type str. что можно перевести как: Конвертирует объект в эквивалентную строку текста. Объект может быть почти любого типа. Полезный результат гарантирован только для входного типа - строка. Немножечко помыслив приходим в выводу что если на входе - строка (даже обернутая в anytype), полезным нам результат никак не может быть, ибо нафиг тогда использовать эту ф-ю??? Или я что то не так не понимаю, или мир сошел с ума.
|
|
|
|
|
#4 |
|
Участник
|
Цитата:
Сообщение от Alks
Мдяя.... интересное описание в помощи для этой ф-ии:
Converts object to the equivalent text string. object can be of almost any data type. Useful output is only guaranteed for input type str. что можно перевести как: Конвертирует объект в эквивалентную строку текста. Объект может быть почти любого типа. Полезный результат гарантирован только для входного типа - строка. Немножечко помыслив приходим в выводу что если на входе - строка (даже обернутая в anytype), полезным нам результат никак не может быть, ибо нафиг тогда использовать эту ф-ю??? Или я что то не так не понимаю, или мир сошел с ума. ![]() Последний раз редактировалось MironovI; 21.02.2006 в 11:36. |
|
|
|
|
#5 |
|
Участник
|
strFmt('%1', value)
всегда работает |
|
|
|
|
#6 |
|
Сенбернар
|
Выше вам ответили уже же - strfmt('%1', value);
Или вы "полной универсальности" хотите? Если так - то для чего, если не секрет?
__________________
Best Regards, Roman |
|
|
|
|
#7 |
|
Участник
|
Тем не менее добрых людей не хватило на написание остальных функций, что ж, буду сам дописывать value2Real и т.д.. иногда начинаю понимать почему у морально не стойких и не лояльных новичков волосы встают дыбом от Аксы
)
|
|
|
|
|
#8 |
|
Участник
|
в классе Global есть функция con2str()
попробуйте, например: info(con2str([1423512345,'1423512345',1423512345.34125 ], " тчк ")); |
|
|
|
|
#9 |
|
Участник
|
Цитата:
Сообщение от Горбунов Дмитрий
Мне необходимо преобразовать данные любого типа из контейнера в стринг
Цитата:
Сообщение от Горбунов Дмитрий
(в контейнере есть данные в произвольном порядке - дата, целое число, число с плавающей запятой, стринг ).
это без управления преобразованием. |
|
|
|
|
#10 |
|
Ищущий знания...
|
Все дорого времени суток
![]() Вот опять нарвался на некорректное поведение any2str... (долго не мог понять почему одна из функций отрабатывает только на половину )any2str не переваривает в качестве параметра anyType с типом Date, выбрасывает ошибку преобразования. ИСПОЛЬЗУЙТЕ функцию StrFmt()!!! Интересно, а как обстоят дела с этой функцией в четверке и AX2009? её там исправили?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
|
|
|
#11 |
|
Участник
|
|
|
|
|
| За это сообщение автора поблагодарили: lev (1). | |
|
|
#12 |
|
Ищущий знания...
|
Цитата:
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
|
| Теги |
| баг, преобразование типов |
|
|
|