Actionscript 读取带有AIR、空格和链接的远程文本文件
我的web服务器中有一个文本文件(txt)。我将读取文件内容并将其显示给用户。问题是它没有以正确的方式显示行分隔和空格。我还需要激活可能的链接。例如,如果有,用户只需单击链接,默认浏览器就会打开它 到目前为止,我有:Actionscript 读取带有AIR、空格和链接的远程文本文件,actionscript,air,Actionscript,Air,我的web服务器中有一个文本文件(txt)。我将读取文件内容并将其显示给用户。问题是它没有以正确的方式显示行分隔和空格。我还需要激活可能的链接。例如,如果有,用户只需单击链接,默认浏览器就会打开它 到目前为止,我有: var fileContents:String; try{ var myLoader:URLLoader = new URLLoader(); myLoader.addEventListen
var fileContents:String;
try{
var myLoader:URLLoader = new URLLoader();
myLoader.addEventListener(Event.COMPLETE, onFileLoaded);
myLoader.load(new URLRequest("http://my.website.com/test.txt"));
function onFileLoaded(e:Event):void
{
fileContents = String(e.currentTarget.data);
var alertMessage = fileContents;
我在java中也做过同样的事情,但我对ActionScript不太熟悉
Java代码:
URL url = new URL(getString(R.string.url));
BufferedReader r = new BufferedReader(new InputStreamReader(
url.openStream(), "UTF-8"));
StringBuilder total = new StringBuilder();
String line;
while ((line = r.readLine()) != null) {
total.append(line);
total.append(System.getProperty("line.separator"));
}
str = total.toString();
r.close();
return str;
java中的链接:
final SpannableString s = new SpannableString(sUrl);
Linkify.addLinks(s, Linkify.WEB_URLS);
<>你可以考虑使用Adobe中的文本布局框架(TLF)。您可以将文本导入为HTML,它将为文本中找到的任何URL创建可单击的链接。TLF有点笨拙,但非常强大
private var myTextFlow:TextFlow = TextConverter.importToFlow(sourceText, TextConverter.TEXT_FIELD_HTML_FORMAT);
如果您使用的是Flex 4,则可以将生成的TextFlow
对象指定给其中一个文本组件:
<s:RichText textFlow="{myTextFlow}" />
感谢您的回答,我使用的是Air 3.3,当我尝试将源文本添加到textFlow对象时,我只能从中读取textFlow:[对象textFlow]有什么想法吗?
textFlow
是一个复杂的对象,而不是简单的字符串
,因此您不能仅尝试从中读取或跟踪其值。您可能应该查找使用TLF文本和/或TextFlow
的其他示例。这是。。。
private var container:Sprite = new Sprite();
addChild(container);
private var controller:ContainerController = new ContainerController(container, 800,600);
myTextFlow.flowComposer.addController(controller);
myTextFlow.flowComposer.updateAllControllers();