ludaweb 发表于 2024-7-2 15:38:50

vla-get-TextString获取葡萄牙文出现?

本帖最后由 ludaweb 于 2024-7-2 15:40 编辑

vla-get-TextString获取葡萄牙文出现?

使用下来语句
(vlax-get (vlax-ename->vla-object (car (entsel))) 'TextString)
获取如下文本内容
Governo da Região Administrativa Especial de Macau da República Popular da China


结果为
Governo da Regi?o Administrativa Especial de Macau da República Popular da China

你有种再说一遍 发表于 2024-7-2 16:14:40

本帖最后由 你有种再说一遍 于 2024-7-2 16:18 编辑

低版本lisp不是utf8编码,所以造成此类事件.
甚至用来\0表示末尾,编码造成断言失败,然后每次get都是不一样的长度...
所以我才转到c#去的.

小菜123 发表于 2024-7-2 16:56:57

二惊大,你的水平可以切换自如,我等就不行:D-

ludaweb 发表于 2024-7-2 19:06:34

你有种再说一遍 发表于 2024-7-2 16:14
低版本lisp不是utf8编码,所以造成此类事件.
甚至用来\0表示末尾,编码造成断言失败,然后每次get都是不一样 ...

假如说跟lisp低版本有关系,但下面

单行文本用组码的形式
(cdr (assoc 1 (entget (car (entsel)))))
获取的结果是没问题的。

你有种再说一遍 发表于 2024-7-2 19:10:53

ludaweb 发表于 2024-7-2 19:06
假如说跟lisp低版本有关系,但下面

单行文本用组码的形式


vla的断言方式出问题咯

ludaweb 发表于 2024-7-2 19:11:59

你有种再说一遍 发表于 2024-7-2 19:10
vla的断言方式出问题咯

对的,vla的问题

你有种再说一遍 发表于 2024-7-2 19:16:35

ludaweb 发表于 2024-7-2 19:11
对的,vla的问题

有些地方你还不得不用vla,尤其是图层符号表的修改,改个图层名字每次get不到一样的...
页: [1]
查看完整版本: vla-get-TextString获取葡萄牙文出现?