Имя: Пароль:
1C
1C 7.7
v7: XML
0 treor
 
19.06.16
10:17
Здравствуйте.
В 1с7.7 создаю XML-файл.

    xmlFSO=СоздатьОбъект("Scripting.FileSystemObject");
    xmlWriteFile = xmlFSO.CreateTextFile(ИмяФайлаДанных, -1, 0);

Затем по шаблону заполняю его.Файл создается.Если просматриваю его блокнотом - все нормально, другие программки не отображают русские символы. Кодировка UTF-8.
1 treor
 
19.06.16
10:19
P.S. файл этот затем грузится на портал. И там также рус.символы не распознаются(((
2 Зая Бусечка
 
19.06.16
10:27
Выкинуть "другие программки" и "портал" - не предлагать?
Тогда остаётся одно. Изучать документацию по FileSystemObject, чтобы он не писал в уникоде...
3 NorthWind
 
19.06.16
10:37
(0) а более стандартные для XML средства не катят? XMLParser из компоненты v7Plus, к примеру... все-таки создавать XML как обычный текстовый файл - это очень как-то стоя в гамаке
4 Garykom
 
гуру
19.06.16
10:50
..ля. А когда уже перестанут обычный текстовый файл (XML=TXT с тегами) писать через задний проход?
5 Beretta
 
19.06.16
11:49
(4) Сейчас Serginio1 придет, порядок наведет =)
6 Garykom
 
гуру
19.06.16
11:59
(5) Тсс, тихо не призывай. Мне иногда кажется он что то на своем .нет наваял что как упомянешь его или разработку то приходит
7 MishaD
 
19.06.16
12:30
(6) я уже про это писал, наверняка по кодовым словам мисту парсит.
8 NorthWind
 
19.06.16
12:34
(5) Через задний проход имеется в виду специальными средствами (ЗаписьXML или DOM)? Тогда я не согласен, на мой взгляд, как раз задний проход - это использование чистого текста для этих целей
9 Garykom
 
гуру
19.06.16
12:48
(8) да ну? так сложно самому наваять функции/процедуры для чтения/записи xml?
ну или найти нечто готовое http://catalog.mista.ru/public/290424/
10 NorthWind
 
19.06.16
14:51
(9) да можно, кто спорит. Только зачем, если для XML есть стройная методология работы, которую достаточно один раз изучить и применять стандартные средства?
11 NikVars
 
20.06.16
17:39
(0) Смотри регламентированные отчеты.
А именно конец процедуры СформироватьФайлВыгрузки() из negvoz11.ert. Делаешь как обычно, в кодировке 1215, далее конверт в utf-8
12 treor
 
28.06.16
14:10
Все-таки решила оставить имеющийся код и использовать функцию

Функция ПреобразоватьСтрокуВУТФ8(Стр)
    Длина=СтрДлина(Стр);
    Итог="";
    Для Н=1 По Длина Цикл
        Знак=Сред(Стр,Н,1);
        Код=КодСимв(Знак);
        Если Код<128 Тогда
            Итог=Итог+Знак;
        Иначе
            Если (Код>=КодСимв("А"))И(Код<=КодСимв("п")) Тогда
                Итог=Итог+Симв(208)+Симв(144+Код-КодСимв("А"));
            ИначеЕсли (Код>=КодСимв("р"))И(Код<=КодСимв("я")) Тогда
                Итог=Итог+Симв(209)+Симв(128+Код-КодСимв("р"));
            ИначеЕсли (Знак="ё") Тогда
                Итог=Итог+Симв(209)+Симв(145);
            ИначеЕсли (Знак="Ё") Тогда
                Итог=Итог+Симв(208)+Симв(129);
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
    Возврат Итог;
КонецФункции
13 xXeNoNx
 
28.06.16
14:13
Тема не соответствует заголовку... Предлагаю закрыть
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс