Flash AS3.0如何在文本文件仍由C ++程序编写时读取文件文本?
我有一些我之前问过的代码+我修改了一些代码但它只能读取完全写入的文本文件。
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
var toLoad:URLRequest = new URLRequest("example.txt");
var loader:URLLoader = new URLLoader(toLoad);
loader.addEventListener(Event.COMPLETE, loaded, false, 0, true);
function loaded(evt:Event):void
{
var txtData:String = evt.currentTarget.data;
txtData = txtData.replace(/^\s+/, '');
txtData = txtData.replace(/\s+/g, ' ');
txtData = txtData.replace(/\s+$/, '')
var textAr:Array = txtData.split(" ");
var xArray:Array = new Array;
var yArray:Array = new Array;
var i=0;
var ii = textAr.length;
while (i < ii)
{
if (textAr[i] != "---")
{
xArray.push(textAr[i]);
yArray.push(textAr[i+1]);
i+=2;
}
else
{
xArray.push("-");
yArray.push("-");
i++;
}
}
}
现在我的任务是读取实时文件并将xArray和yArray发送到另一个函数,但我不知道如何编写它。
拜托,帮助我。
答案 0 :(得分:1)
我不确定C ++程序是如何编写文件的,但我认为它没什么特别的,它只是打开文件,写入内容并关闭它。问题是,在C ++关闭文件之前,内容不会保存在磁盘上(从而保存文件)。
因此,要解决您的问题,您应该修改C ++程序(如果可以的话),将内容的一小部分写入文件,然后关闭它并再次打开它。你的flash程序也一样。它不是实时的,但它足够接近。
无论如何,文本文件不是实时阅读的最佳选择。您可以使用套接字或其他东西在C ++和Flash之间进行通信。