[Gambas-user] gbXML from Karol

Daniel Campos daniel.campos at ...338...
Tue Oct 12 21:22:42 CEST 2004


Well this XML week at gambas!

Here's the same code using XmlWriter from gb.xml.libxml:

PUBLIC SUB SaveXML(sFileName AS String)
DIM nI AS Integer
DIM nJ AS Integer
DIM iTyp AS Integer
DIM sText AS String
DIM FileHandler AS File
DIM sSpace AS String
DIM sExt AS String
DIM Xml AS NEW XmlWriter

    sSpace = "   "
    sExt= File.Ext(sFileName)
    IF sExt= "" THEN
        IF Right(sFileName,1)<> "." THEN
            sExt = ".xml"
        ELSE
            sExt = "xml"
        ENDIF
    ELSE
        sFileName = Replace(sFileName,File.Ext(sFileName),"")
        sFileName = Left(sFileName,Len(sFileName) - 1)
        sExt = "." & sExt
    ENDIF
    WITH  ME
         
        Xml.Open (sFileName & sExt,TRUE,"UTF-8")
        Xml.StartElement ("xTableView",["Text",File.BaseName
(sFileName)])
        FOR nJ = 0 TO  .Columns.Count - 1
            Xml.StartElement ("Column",["ID",nJ,"Text",.Columns
[nJ].Text])
            nI = 0
            DO WHILE nI <> .Rows.Count
                iTyp = .DataTypeOf(nI,nJ)
                Xml.StartElement ("Row",
["ID",nI,"Type",iTyp,"Text",.Rows[nI].Text])
                IF  iTyp <> gb.Object  THEN
                    Xml.Attribute ("Value",.Text(nI,nJ))
                ELSE
                    Xml.Attribute ("Value",SavePicture(.Picture(nI,nJ) ,
sFileName)) 
                ENDIF
                Xml.EndElement()
                INC nI
            LOOP
            Xml.EndElement ()
        NEXT
        Xml.EndDocument ()
        
    END WITH
END





More information about the User mailing list