浏览代码

* new libxml2 sample

git-svn-id: trunk@11633 -
ivost 17 年之前
父节点
当前提交
52666b1dc0
共有 4 个文件被更改,包括 110 次插入60 次删除
  1. 1 0
      .gitattributes
  2. 59 59
      packages/libxml/examples/Makefile
  3. 1 1
      packages/libxml/examples/Makefile.fpc
  4. 49 0
      packages/libxml/examples/io2.pas

+ 1 - 0
.gitattributes

@@ -3287,6 +3287,7 @@ packages/libxml/examples/Makefile svneol=native#text/plain
 packages/libxml/examples/Makefile.fpc svneol=native#text/plain
 packages/libxml/examples/exutils.pas svneol=native#text/plain
 packages/libxml/examples/io1.pas svneol=native#text/plain
+packages/libxml/examples/io2.pas svneol=native#text/plain
 packages/libxml/examples/reader1.pas svneol=native#text/plain
 packages/libxml/examples/reader2.pas svneol=native#text/plain
 packages/libxml/examples/test1.xml svneol=native#text/plain

+ 59 - 59
packages/libxml/examples/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/08/22]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/08/15]
 #
 default: all
 MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded
@@ -259,178 +259,178 @@ UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
 PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
 ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-haiku)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),avr-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),armeb-linux)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 ifeq ($(FULL_TARGET),armeb-embedded)
-override TARGET_PROGRAMS+=reader1 reader2 io1
+override TARGET_PROGRAMS+=reader1 reader2 io1 io2
 endif
 override INSTALL_FPCPACKAGE=y
 ifdef REQUIRE_UNITSDIR

+ 1 - 1
packages/libxml/examples/Makefile.fpc

@@ -3,7 +3,7 @@
 #
 
 [target]
-programs=reader1 reader2 io1
+programs=reader1 reader2 io1 io2
 
 [require]
 #packages=

+ 49 - 0
packages/libxml/examples/io2.pas

@@ -0,0 +1,49 @@
+(**
+ * section: InputOutput
+ * synopsis: Output to char buffer
+ * purpose: Demonstrate the use of xmlDocDumpMemory
+ *          to output document to a character buffer
+ * usage: io2
+ * test: io2 > io2.tmp ; diff io2.tmp io2.res ; rm -f io2.tmp
+ * author: John Fleck
+ * copy: see Copyright for the status of this software.
+ *)
+
+program io2;
+
+{$mode objfpc}
+
+uses
+  ctypes,
+  libxml2,
+  exutils,
+  SysUtils;
+
+var
+  n: xmlNodePtr;
+  doc: xmlDocPtr;
+  xmlbuff: xmlCharPtr;
+  buffersize: cint;
+
+begin
+  (*
+   * Create the document.
+   *)
+  doc := xmlNewDoc(BAD_CAST('1.0'));
+  n := xmlNewNode(nil, BAD_CAST('root'));
+  xmlNodeSetContent(n, BAD_CAST('content'));
+  xmlDocSetRootElement(doc, n);
+
+  (*
+   * Dump the document to a buffer and print it
+   * for demonstration purposes.
+   *)
+  xmlDocDumpFormatMemory(doc, xmlbuff, buffersize, 1);
+  printfn(xmlbuff);
+
+  (*
+   * Free associated memory.
+   *)
+  xmlFree(xmlbuff);
+  xmlFreeDoc(doc);
+end.