• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-02-2010, 03:18   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 14
Textdatei auslesen und XML

Hallo!

Ich habe eine XML-Datei, deren Knoten so aussehen
Code:
<prod type="CD" title="CD Titel1" pic="platzhalter_cd.jpg" desc="cd1.txt" size="" price="" shipping=""/>
<prod type="CD" title="CD Titel1" pic="platzhalter_cd2.jpg" desc="cd2.txt" size="" price="" shipping=""/>
Nun erstelle ich folgendermaßen die Shop-Liste in Flash:
Code:
var loader:LoadVars = new LoadVars();
loader.onLoad = function(test) {
	if (test) {
		Items.desc_txt.text = this.text;
	} else {
		Items.desc_txt.text = 'Textdatei wurde nicht gefunden';
	}
}

shop.onLoad = function(success) {
	if (success) {
		alle = shop.firstChild.childNodes.length;
		type = [];
		title = [];
		pic = [];
		desc = [];
		size = [];
		preis = Number;
		shipping = Number;
		for (var i = 0; i<alle; i++) {
			
			type[i] = shop.firstChild.childNodes[i].attributes.type;
			title[i] = shop.firstChild.childNodes[i].attributes.title;
			pic[i] = shop.firstChild.childNodes[i].attributes.pic;
			desc[i] = shop.firstChild.childNodes[i].attributes.desc;
			size[i] = shop.firstChild.childNodes[i].attributes.size;
			preis[i] = shop.firstChild.childNodes[i].attributes.price;
			shipping[i] = shop.firstChild.childNodes[i].attributes.shipping;
			
			Items = _root.createEmptyMovieClip("shopItem"+i, i);
			Items.width = 600;
			Items._x = 150;
			Items._y = 30+(120*i);
			
			Items.createEmptyMovieClip("ip", 1);
			Items.ip.loadMovie(pic[i]);
			
			Items.createTextField("title_txt", 2, 120, 0, 300, 18);
			Items.title_txt.text = title[i];
			Items.title_txt.setTextFormat(tf1);
			
			Items.createTextField("desc_txt", 3, 120, 24, 300, 80);
			Items.desc_txt.multiline = true;
			Items.desc_txt.wordWrap = true;
			loader.load(desc[i]);
			Items.desc_txt.setNewTextFormat(tf2);
			trace(desc[i]);
		}
	} else {
		anzload.text = "Fehler beim Laden.";
	}
};
Klappt auch alles bis auf das Einlesen der Textdatei, die mit dem XML-Attribut "desc" beschrieben wird. Es wird immer nur ein Text eingelesen, und zwar der letze aus der Liste.

Wahrscheinlich kann ich die LoadVars-Klasse so nicht mit dem XML-Objekt mischen, oder doch?

Was mache ich falsch?

Danke schonmal!
Nininsky ist offline   Mit Zitat antworten
Alt 23-02-2010, 06:58   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
Wahrscheinlich kann ich die LoadVars-Klasse so nicht mit dem XML-Objekt mischen, oder doch?
Nein, wozu auch? Die XML-Klasse hat eigene Lade- und Parser-Routinen. Schau dir bspw. mal dieses Grundlagentutorial an.
  Mit Zitat antworten
Alt 23-02-2010, 13:03   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 14
Danke, agedoubleju.
Ich habe das Tutorial durchgesehen, habe aber nichts dazu gefunden, wie ich die externe Textdatei über den Pfad in der XML einlesen kann. Das Einlesen der XML-Datei an sich klappt ja.

Kannst Du mir (oder jemand anderes) vielleicht einen Hinweis geben, wonach ich schauen muss?
Nininsky ist offline   Mit Zitat antworten
Alt 23-02-2010, 14:02   #4 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
habe aber nichts dazu gefunden, wie ich die externe Textdatei über den Pfad in der XML einlesen kann.
Sind das zwei verschiedene Files? Wenn ja, wie sieht das Textfile aus und warum nimmst du zwei verschiedene Typen?
  Mit Zitat antworten
Alt 23-02-2010, 14:31   #5 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 14
Zitat:
Zitat von agedoubleju Beitrag anzeigen
Sind das zwei verschiedene Files? Wenn ja, wie sieht das Textfile aus und warum nimmst du zwei verschiedene Typen?
Was meinst Du mit "unterschiedlichen Typen"?
Die Textdateien unterscheiden sich nur durch den Inhalt.
Ich möchte den Text nicht innerhalb der XML stehen haben, damit die XML übersichtlich bleibt und der Text leicht schnell geändert werden kann.

Die Textdatei sieht so aus:

&text=Hier steht der Text.

Textdatei im UTF-8 Format.

Die letze Textdatei, auf die ich aus der XML verweise, wird korrekt im Textfeld angezeigt.
Nininsky ist offline   Mit Zitat antworten
Alt 23-02-2010, 15:34   #6 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Axo, jetzt hab ich es gecheckt... Du darfst keine for-Schleife in shop.onLoadnehmen, sondern solltest mit einer Ladefunktion und einem Zähler arbeiten. Mal als grober Ansatz:
PHP-Code:
var alle:Number;
var 
counter:Number 0;
var 
loader:LoadVars = new LoadVars();
loader.onLoad = function(test) {
    if (
test) {
        
Items.desc_txt.text this.text;
                
_root.counter ++;
                if(
_root.counter _root.alle){//hintereinander laden
                   
_root.lade(_root.counter)
                }
    } else {
        
Items.desc_txt.text 'Textdatei wurde nicht gefunden';
    }
}

shop.onLoad = function(success) {
    if (
success) {
        
alle shop.firstChild.childNodes.length;
        
type = [];
        
title = [];
        
pic = [];
        
desc = [];
        
size = [];
        
preis Number;
        
shipping Number;
                
lade(counter);
...
}
function 
lade(nr:Number){
   
type[nr] = shop.firstChild.childNodes[i].attributes.type;
   ...
   
Items.desc_txt.wordWrap true;
   
loader.load(desc[nr]);
   



Geändert von agedoubleju (23-02-2010 um 22:59 Uhr)
  Mit Zitat antworten
Alt 23-02-2010, 22:29   #7 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 14
Huh - hat ne Weile gedauert, bis ich es verstanden habe, aber jetzt hat's geklappt.
Was fehlte war counter++

Vielen Dank!!!
Nininsky ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
loadvars, textdatei, xml

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
textdatei auslesen hds26846 Flash Einsteiger 7 18-12-2007 16:46
Aus Textdatei auslesen... Dante_fresh Flash Einsteiger 1 21-03-2006 10:25
Textdatei auslesen aerztchen ActionScript 1 2 24-06-2003 13:54
textdatei auslesen anubis ActionScript 1 3 19-03-2002 13:50
textdatei auslesen ? theexplainer ActionScript 1 2 18-03-2002 20:00


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele