2

単語を含む6つのtxtファイルがあり、それぞれが新しい行にあり、それぞれの配列に読み取られて処理されます。以下のコードは最初の5つの配列では機能しましたが、わずかに異なる最後の配列では機能しませんでした。

var loadFavourites: URLLoader = new URLLoader();;
    var arFavourites = new Array();
    loadFavourites.load(new URLRequest("Lists/Favourites.txt"));
    loadFavourites.addEventListener(Event.COMPLETE, onLoadedFavourites);
    function onLoadedFavourites(e6:Event):void {
        arFavourites = e6.target.data.split("\r\n");}

まったく同じ方法でロードしますが、運がありません。arFavourites.lengthをトレースすると、0になります。5つの値ごとにデータグリッドにロードするために必要です。

var iC:int=0;
var iX:int=0; 

while (!iX==arFavourites.length-1)
{
    trace(iX);
    if (iC == 5) {
        dg.addItem({Place: arFavourites[iX-4],Subject:arFavourites[iX-3],Object:arFavourites[iX-2],Feeling:arFavourites[iX-1],Action:arFavourites[iX]});
        iC=0;
    } else {
        iC++;
        trace(iC);
    } 
    iX++;
}

よろしくお願いします!

4

1 に答える 1

1

代わりに次のようなことを試してください。

Favourites.txt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

コード:

var loadFavourites: URLLoader = new URLLoader();;
var favouritesArray = new Array();

loadFavourites.addEventListener(Event.COMPLETE, onLoadedFavourites);
loadFavourites.load(new URLRequest("Favourites.txt"));

function onLoadedFavourites(event:Event):void
{
    favouritesArray = event.target.data.split("\r\n");

    for (var i:int = 0; i <= favouritesArray.length; i++)
    {
        if (i != 0 && i % 5 == 0)
        {
            trace(i - 4, i - 3, i - 2, i - 1, i);
        }
    }
}

出力:

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
于 2013-01-13T14:10:19.570 に答える