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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Проблема с кодировкой символов

Проблема с кодировкой символов

Ответ
Поиск в этой теме
Непрочитано 29.02.2016, 11:53 #1
Проблема с кодировкой символов
onix
 
Регистрация: 20.05.2011
Сообщений: 38

Здравствуйте, уважаемые гуру!

Имеется дамп объекта
Код:
[Выделить все]
 
(
    (-1 . <Имя объекта: 7ffffb20980>)
    (0 . "MAGIELECTRICALGROUPSYMBOL")
    (330 . <Имя объекта: 7ffffb039f0>)
    (5 . "27D30")
    (100 . "AcDbEntity")
    (67 . 0)
    (410 . "Model")
    (8 . "ПР_ЭС_РО_КАБ_")
    (62 . 5)
    (100 . "MAGIELECTRICALENTITY")
    (70 . 801)
    (71 . 0)
    (72 . 0)
    (40 . 1.0)
    (41 . 1.0)
    (73 . 0)
    (74 . 0)
    (75 . 0)
    (76 . 0)
    (70 . 2)
    (70 . 2001)
    (70 . 256)
    (70 . 2002)
    (70 . -1)
    (70 . 35)
    (70 . 2001)
    (70 . 1003)
    (70 . 1011)
    (280 . 0)
    (70 . 6046)
    (300 . "09lnw2Sr1AY8J4gCkxr6TP")
    (70 . 2015)
    (70 . 1)
    (70 . 4001)
    (40 . 1402.06)
    (70 . 1001)
    (280 . 1)
    (70 . 3001)
    (90 . 1)
    (70 . 3002)
    (90 . 2)
    (70 . 3006)
    (90 . 1)
    (70 . 3007)
    (90 . 228)
    (70 . 3013)
    (90 . 0)
    (70 . 4037)
    (40 . 0.0)
    (70 . 4038)
    (40 . 0.0)
    (70 . 1010)
    (280 . 1)
    (70 . 4015)
    (40 . 100.0)
    (70 . 1012)
    (280 . 0)
    (70 . 4039)
    (40 . 45.1976)
    (70 . 4043)
    (40 . 0.0)
    (70 . 6020)
    (300 . "Освещение (Автомат)")
    (70 . 6013)
    (300 . "Освещение (Автомат)")
    (70 . 6014)
    (300 . "6,82")
    (70 . 6021)
    (300 . "MAGI805USRU_AV_1P")
    (70 . 6005)
    (300 . "Рћ-4.4.1-1")
    (70 . 1009)
    (280 . 0)
    (70 . 4007)
    (40 . 0.72)
    (70 . 4016)
    (40 . 0.8)
    (70 . 4014)
    (40 . 0.9)
    (70 . 4017)
    (40 . 0.72)
    (70 . 4018)
    (40 . 0.8)
    (70 . 4019)
    (40 . 0.9)
    (70 . 4012)
    (40 . 1.0)
    (70 . 6049)
    (300 . "100110")
    (70 . 6006)
    (300 . "ЩО-4.4.1")
    (70 . 11001)
    (330 . <Имя объекта: 7ffffb220b0>)
    (70 . 11009)
    (330 . <Имя объекта: 7ffffb20920>)
    (100 . "MAGIELECTRICALSYMBOL")
    (10 174229.0 17601.7 2800.0)
    (210 -0.0541368 0.0 -0.998534)
    (211 0.998534 0.0 -0.0541368)
    (340 . <Имя объекта: 7ffffb03910>)
    (340 . <Имя объекта: 7ffffb1a2c0>)
    (70 . 256)
    (71 . 0)
    (72 . 2)
    (212 -0.0541368 0.0 -0.998534)
    (73 . 0)
    (40 . 0.0)
    (340 . <Имя объекта: 0>)
    (340 . <Имя объекта: 0>)
    (340 . <Имя объекта: 0>)
    (340 . <Имя объекта: 0>)
    (74 . 0)
    (70 . 0)
    (70 . 1)
    (70 . 9001)
    (90 . 56)
    (310 . "E9030100000000000000000000000000000000000000000000000000EB0300000000006039E8954000000000000000000000000000000000")
    (70 . 0)
  )
Там есть такие штуки (300 . "ЩО-4.4.1").
Если я lisp'ом получаю значение, (cdr '(300 . "ЩО-4.4.1")), то получаю ЩО-4.4.1, а должно быть ЩО-4.4.1.
Я так понимаю что проблема с кодировкой?
Как мне лиспом исправить кодировку, чтоб вместо ЩО-4.4.1 получить ЩО-4.4.1
Просмотров: 3009
 
Непрочитано 29.02.2016, 12:14
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,829


Похоже на объект MagiCAD'a. А что будет, если дамп снимать не через entget, а через COM?
P.S. Можно попробовать DWGConvert от А.Ривилиса, но я не уверен, что эта проблема будет решена.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 29.02.2016, 12:20
#3
onix


 
Регистрация: 20.05.2011
Сообщений: 38


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Похоже на объект MagiCAD'a. А что будет, если дамп снимать не через entget, а через COM?
P.S. Можно попробовать DWGConvert от А.Ривилиса, но я не уверен, что эта проблема будет решена.
Да, это маджикадовский объект символ цепи)
дамп COM этого символа:
Код:
[Выделить все]
 
; IMECircuitSymbol: IMECircuitSymbol Interface
; Значения свойств:
;   ActiveRoom (RO) = " "
;   Application (RO) = #<VLA-OBJECT IAcadApplication 000000014026d910>
;   Document (RO) = #<VLA-OBJECT IAcadDocument 000000002b565728>
;   ElectricalSystem (RO) = 2
;   EntityTransparency = "ПоСлою"
;   Handle (RO) = "288E5"
;   HasExtensionDictionary (RO) = 0
;   Hyperlink (RO) = ""
;   Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 0000000049509de8>
;   Layer = "ПР_ЭС_РО_КАБ_"
;   Linetype = "ByLayer"
;   LinetypeScale = 1.0
;   Lineweight = -1
;   Material = "ByLayer"
;   ObjectID (RO) = 79
;   ObjectID32 (RO) = 79
;   ObjectName (RO) = "CMeGroupSymbolEntity"
;   ObjectStatus = -1
;   OwnerID (RO) = 43
;   OwnerID32 (RO) = 43
;   PartType (RO) = "Символы цепи/Эл."
;   PlotStyleName = "Цвет_5"
;   RoomStorey (RO) = "11 \"4 этаж (+12.600)\""
;   SystemType (RO) = "Electric"
;   SystemUserCode (RO) = "РО"
;   TrueColor = #<VLA-OBJECT IAcadAcCmColor 0000000049510560>
;   UserVar1 = ""
;   UserVar2 = ""
;   UserVar3 = ""
;   UserVar4 = ""
;   Visible = -1
; Поддерживаемые методы:
;   ArrayPolar (3)
;   ArrayRectangular (6)
;   Copy ()
;   Delete ()
;   GetBoundingBox (2)
;   getDefaultNrDigits (2)
;   GetExtensionDictionary ()
;   getPartTypeID ()
;   getSupportedAppIDs ()
;   GetXData (3)
;   Highlight (1)
;   IntersectWith (2)
;   Mirror (2)
;   Mirror3D (3)
;   Move (2)
;   Rotate (2)
;   Rotate3D (3)
;   ScaleEntity (2)
;   SetXData (2)
;   TransformBy (1)
;   Update ()
Но тут эти свойства не отображаются (300 . "ЩО-4.4.1").

И как через COM добраться до этого свойста я честно говоря не знаю.
onix вне форума  
 
Непрочитано 29.02.2016, 12:48
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,829


Похоже, надо искать / писать изменение кодировки UTF-8 в ANSI.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.02.2016, 13:51
#5
P_S


 
Регистрация: 09.10.2006
Санкт-Петербург
Сообщений: 99


К сожалению, не с чем проверить. Может быть, можно с помощью nentsel вытащить дампы составных частей объекта?
P_S вне форума  
 
Непрочитано 29.02.2016, 18:06
#6
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,093


Цитата:
Сообщение от onix Посмотреть сообщение
И как через COM добраться до этого свойста я честно говоря не знаю.
GetXData, GetExtensionDictionary не помогли? Если выложите пример, можно будет поковырять. Опять же, MagiCAD'a у меня нет, enabler тоже не установлен, так что чистота эксперимента будет соблюдена
kp+ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Проблема с кодировкой символов

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с выводом на печать чертежей, содержащийх подрезанные растровые изображения (AutoCAD 2009LT) GazRust AutoCAD 13 27.06.2014 10:51
проблема с кодировкой текста NoX AutoCAD 8 05.10.2012 09:18
Проблема с Удлиннением отрезка rtyu AutoCAD 24 24.07.2012 16:28
AutoCAD 2008: Проблема при печати файла с неизвестным форматом листа Fredyk AutoCAD 3 12.07.2012 12:26
Редактор блоков, проблема при двойном клике Klim007 AutoCAD 4 22.11.2011 16:43