21.12.2006, 15:10 | #1 |
Участник
|
Замена знаков пунктуации
Доброго дня всем...
Подскажите пожалуйста... Мне нужно вывести в txt документ значение полей... Например номенклатура- fghgh,fhh,10. Ну нужно вместо запятых ставить слеш. ItemId = jTrans1.ItemId;// присваиваю код товара strLine = strRem(ItemId ,","); strLine += ItemId ; strTransferLine += ";" ; я удаляю запятые, но как изменить на слеш ума не приложу.. |
|
21.12.2006, 15:15 | #2 |
Axapta
|
strReplace(itemId, ',' , '/');
|
|
21.12.2006, 15:21 | #3 |
Участник
|
Спасибо.
|
|
21.12.2006, 15:56 | #4 |
Злыдни
|
Лучше не используйте слэш, а замените знаки препинания на подчеркивание _. Не дай бог потребуется создавать файлы, совпадающие с наименованием номенклатуры. Удачи
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. |
|
21.12.2006, 16:32 | #5 |
Moderator
|
Точно! Во какая у меня в одном месте есть конструкция для замены "плохих" символов в автоматически формируемом имени рабочего листа Excel:
X++: nvgField.Value ( strReplace ( strReplace ( strReplace ( strReplace ( strReplace ( strReplace ( strReplace(groupKeyPrev, ':', '_'), '/', '_'), @'\', '_'), '?', '_'), '*', '_'), '[', '_'), ']', '_')); |
|
28.04.2009, 13:17 | #6 |
Участник
|
Здравствуйте! Не стала создавать новую тему, надеюсь на помощь в этом разделе
Какова может быть причина, что в строке, объявленной str s; инициализированной нормальным строковым значением через srtfmt(); не работает названная функция strReplace(s,'A','_'); ? Также не дают желаемого результата функции strrem() и strpoke(); - во всех случаях строка остается в первозданном варианте. Длина строки strlen(s) определяется верно. В чем может быть дело? |
|
28.04.2009, 13:28 | #7 |
Участник
|
строки в X++ - не reference type, соответственно, они не передаются в метод по ссылке, а измененная строка просто возвращается из метода
Соответственно, предполагаю, что вы забыли переприсвоить результат своей строке X++: str value = "dfsljlksdfj"; value = strReplace(value, "A", "_"); |
|
28.04.2009, 13:31 | #8 |
Участник
|
Большое спасибо, так и оказалось) Надо было внимательнее читать хелп
|
|
28.04.2009, 13:55 | #9 |
Участник
|
Оказывается, так просто =)) А я в свое время не нашел на msdn функции strReplace и пришлось делать так:
X++: strValue = strPoke(strValue, "/", strFind(strValue, ",", 1, strLen(strValue))); |
|
28.04.2009, 14:15 | #10 |
Moderator
|
Это не внутренняя функция, а статический метод из класса Global (AOT \Classes \Global \strReplace). По этой причине, вероятно, ее нет на msdn. Равно как и в хелпе. Поэтому не стоит себя корить за непрочтение хелпа - его просто нет. Зато доступен текст самой функции, изучай - не хочу
|
|