Как изменить расширение файла программно? #738378


#0 by Domovoi
Из досовской программки делаю выгрузку в файл xml. При открытии в браузере ругается на досовские символы: карты, рамки таблицы и т.д. Открываю программно файл как текстовыйдокумент и заменяю недопустимые символы. Сохраняю в файл txt. Как программно переименовать txt файл в xml?
#1 by vde69
copy Name.txt Name.xml
#2 by Fish
А зачем как txt сохраняешь? Почему не сразу, как xml?
#3 by Domovoi
Открываю с помощью объекта текстовыйдокумент. Пробовал сохранять в файл с расширением xml, но содержание файла изменялось и добавлялись новые недоступные символы.
#4 by Fish
Ну тогда или: "Переименование одного или нескольких файлов. RENAME [диск:][путь]имя_файла1 имя_файла2. REN [диск:][путь]имя_файла1 имя_файла2. Для конечного файла нельзя указать другой диск или каталог."
#5 by Domovoi
А есть такая команда? Как на русском будет?
#6 by Fish
Это команды системы.
#7 by butterbean
в 1С есть функция ПереместитьФайл
#8 by Fish
Есть и копировать: "Глобальный контекст (Global context) КопироватьФайл (FileCopy) Синтаксис: КопироватьФайл(<ИмяФайлаИсточника>, <ИмяФайлаПриемника>) Параметры: Тип: Строка. Полное имя файла-источника. Тип: Строка. Полное имя файла-приемника. Описание: Копирует файл-источник в файл-приемник. Допускается перезапись файла-приемника. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер). Примечание: Файл-приемник при создании будет иметь права доступа, аналогичные назначаемым при создании новых файлов (т.е. права доступа к файлу-источнику не копируются). Допускается использование схем http, https и ftp для адресации файлов. При использовании этих схем в адресах необходимо указывать прямые слеши '/', а не обратные ''. Для работы метода на веб-клиенте необходимо предварительно подключить расширение работы с файлами. На веб-клиенте метод работает только с локальными файлами. Пример: КопироватьФайл("C:TempOrder.htm", "C:My DocumentsOrder.htm");
#9 by Андрюха
Зачем что-то менять, надо просто изменить кодировку файла. И всё.
#10 by Domovoi
Просто в качестве copy есть КопироватьФайл(,) RENAME просто в модуле не прокатывает, может что-то надо дописывать еще?
#11 by Domovoi
о_О вот это по сути переименовывание:)
#12 by Андрюха
+ CMD /U /C Type file1.xml > file2.xml
#13 by Domovoi
Как?
#14 by Domovoi
Поподробнее можно? У меня изначально xml файл записан без кодировки в заголовке, но наверное стоит "cp866", а надо, думаю, в windows-1251 или UTF-8. Я пробую в windows-1251 перегонять: добавил в заголовок encoding="windows-1251" и заменяю досовские символы.
#15 by Андрюха
Дак куда уж подробнее... Ты кодировку где будешь менять в 1С или дос-шел?
#16 by Domovoi
Руками в имеющийся документ вписал encoding="windows-1251" и тем самым как я думаю поменял кодировку.
#17 by butterbean
попробуй при записи твоего текстового документа указывать кодировку, читай СП
#18 by Domovoi
Я указываю. А толку то? Недопустимые символы при этом ни во что не конвертируются.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С