03.05.2017, 16:14 | #1 |
Участник
|
Символ с кодом 160 в качестве пробела
Столкнулся с тем, что некоторые системы, например, SAP или 1C версии 7.7 выгружают числа типа 5555 в обычные текстовые файлы или в Эксель в виде строки "5 555", в которой в качестве разделителя используется не пробел, а символ с ASCII-кодом 160.
В результате, когда в Аксапте надо строку обратно преобразовать в число, приходится писать целые функции. Есть ли какой-нибудь простой способ получить из строки "55 555,55" число в Аксапте 55555.55 ? Я делаю так: X++: str normalizeNum(str _s) { int n; str ret; ; for (n = 1; n <= strLen(_s); n++) { if (char2num(_s, n) != 160) ret += subStr(_s, n, 1); } return strrem(ret, " "); } ; strSum = strreplace("55 555,55", ",", "."); strSum = normalizeNum(strSum); realSum = str2num(strSum); |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|