Hozzunk ki minél többet az AutoCAD-ből
  • Gyula1Gyula2
    #749
    Sziasztok!
    Segítséget kérek LISP programozásban:
    Olyan adatállományt mentek file-be, melyben szöveget állomány is van. A mentett állományban látszólag jó az állomány, de amikor vissza olvasom az Autocad-be, az idézőjelek elé \ karakter kerü, és a továbbiakban nem értelmezi úgy a program, ahogy az állományt lementette.
    pl.:
    (setq szoveg '("alma korte"))
    (SETQ MEMFILE (OPEN "E:\MEMLIST.txt" "w"))
    (PRINT szoveg MEMFILE)
    (CLOSE MEMFILE)

    A létrehozott file tartalma:
    1. sor: üles sor
    2. sor: ("alma korte")
    EDDIG JÓ!

    Most ezt beolvasom Acad-ba:
    (SETQ BEOLVASOTT (OPEN "E:\MEMLIST.txt" "R"))
    (SETQ SOR (READ-LINE BEOLVASOTT)) ;első sor üres
    (SETQ SOR (READ-LINE BEOLVASOTT))
    (CLOSE MEGNYITOTT)

    Eredmény:
    Command: (SETQ BEOLVASOTT (OPEN "E:\MEMLIST.txt" "R"))
    #<file "E:MEMLIST.txt">
    Command: (SETQ SOR (READ-LINE BEOLVASOTT))
    ""
    Command: (SETQ SOR (READ-LINE BEOLVASOTT))
    "(\"alma korte\") "
    Command: (CLOSE MEGNYITOTT)
    nil

    Látszik, hogy ahol " idézőjel volt, kiegészítette \ karakterrel, ami elrontotta a szöveges adatállományomat.
    Az idézőjel szükséges, mert azzal jelölöm, hogy szövegről van szó, de szövegen belül lehet pl. angolszász mértékegységben a COLL jele is.
    Mi a megoldás arra, hogy beolasás után is azt kapjam, amit lementek?

    Köszi, Gyula