كيفية إضافة البيانات إلى عنصر مع حزمة دوم النشطة

StackOverflow https://stackoverflow.com/questions/747613

سؤال

في TCL، إذا كنت تستخدم حزمة DOM (متوفرة في توزيع Abrestate)، يمكنك إنشاء XML.

set xmlDoc [::dom::create]
set root [::dom::document createElement $xmlDoc "trafficStatistics"]

set statElement [::dom::document createElement $root "Tx_Frames"]
::dom::element setAttribute $statElement "type" "numericlist"
::dom::element setAttribute $statElement "displayName" "Tx Frames"

puts [::dom::serialize $xmlDoc -indent true]

إنشاء هذا XML بسيط:

<result>
    <trafficStatistics type="structure">
        <Tx_Frames type="numericlist" displayName="Tx Frames"></Tx_Frames>
    </trafficStatistics>
</result>

كيف يمكنني إضافة بعض البيانات إلى عنصر TX_FRAMES؟

<Tx_Frames type="numericlist" displayName="Tx Frames">some data</Tx_Frames>

لاحظ أن حزمة DOM هي في الواقع عبارة عن غلاف على libxml2

هل كانت مفيدة؟

المحلول

أعتقد أنك تريد ::dom::document createTextNode أمر. علي سبيل المثال:

::dom::document createTextNode $statElement "some data"

عندما أضيف هذا الأمر إلى البرنامج النصي الخاص بك:

set xmlDoc [::dom::create]
set root [::dom::document createElement $xmlDoc "trafficStatistics"]

set statElement [::dom::document createElement $root "Tx_Frames"]
::dom::element setAttribute $statElement "type" "numericlist"
::dom::element setAttribute $statElement "displayName" "Tx Frames"
::dom::document createTextNode $statElement "some data"

ينتج هذا XML:

<trafficStatistics>
  <Tx_Frames type="numericlist" displayName="Tx Frames">some data</Tx_Frames>
</trafficStatistics>

يمكنك العثور على وثائق لحزمة DOM هنا:

http://docs.activestate.com/activetcl/8.5/tcldom/index.html.

امل ان يساعد،

إريك مولكي

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top