| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > autolisp write-line, как сбросить данные в файл?

autolisp write-line, как сбросить данные в файл?

Ответ
Поиск в этой теме
Непрочитано 07.02.2011, 11:52 #1
autolisp write-line, как сбросить данные в файл?
baaba
 
архитектор
 
Москва
Регистрация: 07.07.2007
Сообщений: 644

Проконсультируйте, как правильно сбрасывать данные в файл? Сам пока не разобрался. Если бы это было математическое выражение, то подошло бы что то вроде:
Код:
[Выделить все]
(write-line (itoa (+ 2 3)) f)
Вот мой примерчик:
Код:
[Выделить все]
(setq w (entget (car (entsel)))) ; получаю список свойств примитива
(setq f (open "c:\\tmp\\acadfile.txt" "w")) ; открываю файл на запись
(write-line w f) ; хочу сбросить данные в файл, но что то не работает, наверное надо как-то преобразовать w
(write-line "barabaka" f) ; а эта конструкция работает
(close f) ; закрываю файл
Просмотров: 5195
 
Непрочитано 07.02.2011, 12:01
#2
Alan

CAD
 
Регистрация: 28.08.2003
Киев
Сообщений: 1,835
<phrase 1=


Смотрим HELP
Writes a string to the screen or to an open file

(write-line string [file-desc])

Arguments

string - A string.

file-desc
A file descriptor for an open file.
__________________
По теории майский жук летать не может.
Но он этого не знает. И летает...
Alan вне форума  
 
Автор темы   Непрочитано 07.02.2011, 12:15
#3
baaba

архитектор
 
Регистрация: 07.07.2007
Москва
Сообщений: 644
<phrase 1= Отправить сообщение для baaba с помощью Skype™


Цитата:
Сообщение от Alan Посмотреть сообщение
Смотрим HELP
Writes a string to the screen or to an open file

(write-line string [file-desc])

Arguments

string - A string.

file-desc
A file descriptor for an open file.
Мне всё-равно непонятно что мне делать?
baaba вне форума  
 
Непрочитано 07.02.2011, 12:17
#4
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 571


вместо
(write-line w f)
напиши
(write-line (vl-princ-to-string w) f)
__________________
cadtools
TararykovDG вне форума  
 
Автор темы   Непрочитано 07.02.2011, 12:53
#5
baaba

архитектор
 
Регистрация: 07.07.2007
Москва
Сообщений: 644
<phrase 1= Отправить сообщение для baaba с помощью Skype™


Цитата:
Сообщение от TararykovDG Посмотреть сообщение
вместо
(write-line w f)
напиши
(write-line (vl-princ-to-string w) f)
А я не хочу vl-princ-to-string w, я хочу вписать:
Код:
[Выделить все]
(entget (car (entsel)))
или
Код:
baaba вне форума  
 
Непрочитано 07.02.2011, 13:00
#6
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Ну так и пиши:
Код:
Do$ вне форума  
 
Автор темы   Непрочитано 07.02.2011, 13:07
#7
baaba

архитектор
 
Регистрация: 07.07.2007
Москва
Сообщений: 644
<phrase 1= Отправить сообщение для baaba с помощью Skype™


Цитата:
Сообщение от Do$ Посмотреть сообщение
Ну так и пиши:
Код:
Гм, спасибо!
baaba вне форума  
 
Непрочитано 07.02.2011, 13:16
#8
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Проверь переменную w:
(type w)
аргумент для функции (write-line) должен быть строковым.
Profan вне форума  
 
Автор темы   Непрочитано 07.02.2011, 13:51
#9
baaba

архитектор
 
Регистрация: 07.07.2007
Москва
Сообщений: 644
<phrase 1= Отправить сообщение для baaba с помощью Skype™


Цитата:
Сообщение от Profan Посмотреть сообщение
Проверь переменную w:
(type w)
аргумент для функции (write-line) должен быть строковым.
Код:
[Выделить все]
Command: (type w)
LIST, то есть список.
Но всё равно работает с princ.
Сделал так:
Код:
[Выделить все]
(defun c:dxf (/ f)
	(setq f (open "c:\\tmp\\acadfile.txt" "w"))
	(princ (entget (car (entsel "\nSelect entity"))) f)
	(close f)
)
Спасибо!
baaba вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > autolisp write-line, как сбросить данные в файл?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление программы «Прокат» Василия Кондрата Владимир М LISP 851 14.03.2023 14:31
Как записать данные в файл, находящийся на удалённом компьютере? Makswell Программирование 10 09.07.2015 09:05
Я начинаю заниматься программированием LISP (help) mmax LISP 293 24.02.2009 11:18
структурированный список Holon Программирование 22 11.09.2007 14:09
Где можно взять основную надпись и рамку для када А4 Taleon AutoCAD 18 17.04.2006 22:24