flash air中读取本地文件的三种方法

actionscript中读取本地文件操作有两种代码如下

1.使用File和FileStream两个类,FileStream负责读取数据的所以操作:(同步操作)

?
1
2
3
4
5
var  stream:FileStream = new  FileStream();
var  file:File = new  File( 'E:/test.txt' ); //绑定一个文件
stream.open(file,FileMode.READ); //读取文件
trace (stream.readMultiByte(stream.bytesAvailable, 'utf-8' ));
stream.close();

稍微需要注意的一点是我们的File()函数里传的路径字符串,里面全都使用的是正斜杠,如果使用了反斜杠,你就会收到来自程序的错误。

2.仅File类(异步操作)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
private  var  file:File;
public  function  Tracer()
{
     file = new  File( 'E:/daili.txt' ); //绑定一个文件
     file.addEventListener(Event.COMPLETE,onComplete);
     file.load(); //执行读取操作
}
         
private  function  onComplete(event:Event): void
{
     var  data:ByteArray = file.data;
     trace (data.readMultiByte(data.bytesAvailable, 'utf-8' ));
}

3.使用File和FileStream(异步操作)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var  sourceFile:File = File.documentsDirectory.resolvePath( "Apollo Test/test.txt" );
var  stream:FileStream = new  FileStream();
stream.addEventListener(Event.COMPLETE, readBytes);
stream.openAsync(sourceFile, FileMode.READ);
 
function  readBytes(e:Event): void  {
     var  bytes:ByteArray = new  ByteArray();
     trace ( "position 0:" , stream.position); // 0
     bytes[ 0 ] = stream.readByte();
     trace ( "position 1:" , stream.position); // 1
     fileStream.readBytes(bytes, stream.position, 4 );
     trace ( "position 2:" , stream.position); // 5
     stream.close();
}
人和人不要比。自己做自己。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值