http://www.flashas.net/html/air/20091005/4593.html
异步方式打开文件,写数据操作在下一行代码执行时并没有结束。这怎么办呢?没关系,你可以按顺序的调用多个异步操作,AIR运行环境会逐个执行:
1.var myFile:File = File.documentsDirectory.resolvePath("Mousebomb/test.txt");
2.var myFileStream:FileStream = new FileStream();
3.myFileStream.openAsync(myFile, FileMode.WRITE);
4.myFileStream.writeUTFBytes("hello");
5.myFileStream.writeUTFBytes("world");
6.myFileStream.addEventListener(Event.CLOSE, closeHandler);
7.myFileStream.close();
8.trace("started.");
9.closeHandler(event:Event):void
10.{
11.trace("finished.");
12.}
该例会输出:
started.
finished.
文章来自: 闪客居(www.flashas.net) 详文参考:http://www.flashas.net/html/air/20091005/4593.html
http://zhangyulin20083.blog.163.com/blog/static/776275102010815839624/
文件流方式传输是指数据以二进制文件流的形式流动。简单的数据可存储于文本文件中,通过File、FileStream等类可以方便地操作文本文件。
要完成读写文件操作,基本步骤如下所示:
1) 创建File对象指向文件路径
2) 初始化FileStream对象
3) 使用FileStream的open()或openAsync()方法
4) 若使用的是异步的openAsync()方法则需要为FileStream设置事件监听
5) 加入所需的读写数据代码
6) 完成文件操作后执行FileStream的close()方法
File对象表示文件或目录的路径。可以是现有的文件或目录,也可以是尚不存在的文件或目录(例如,可以表示希望创建的文件或目录的路径)。创建File类变量的语法如下所示。
var file:File=new File(path:String);
File类具有许多属性和方法,用于获取有关文件系统的信息和用于执行各种操作。若要获得当前项目的路径,代码如下所示:
File.applicationResourceDirectory.nativePath
假如在当前项目的根目录下创建一个名为student.txt的文本文件,若要定义一个File类对象并指向student.txt文件的位置,代码如下所示。
var student:File=new File(File.applicationResourceDirectory.nativePath+ "\student.txt");
使用FileStream对象可以读取和写入文件。通过调用open()方法可以同步打开文件,通过调用openAsync()方法可以异步打开文件。若以同步方式打开FileStream对象,格式如下所示。
var stream:FileStream=new FileStream();
stream.open(file:File, fileMode:String);
其中,参数file:File指定要打开的文件的File对象。
fileMode:String是FileMode类中的一个字符串,用于定义FileStream的功能。fileMode的值与作用如表13-1所示。
表13-1 fileMode的值与作用
fileMode值 作用
FileMode.READ 设置文件打开方式为只读
FileMode.WRITE 设置文件打开方式为写数据。若文件不存在,则创建之;若文件存在,则该文件所有存在数据被删除。
FileMode.APPEND 设置文件打开方式为追加。若文件不存在,则创建之;若存在,则文件所有存在数据不被覆盖,所有写入的数据从文件末尾开始。
FileMode.UPDATE 设置文件打开方式为读写。若文件不存在,则创建之。设置该模式通常用于随机读写访问文件。可以从文件的任意位置读取,写入数据时,只有写入位置的存在字节被覆盖,其他所有字节不受影响。
若要以只读方式打开student.txt文件,代码如下所示。
var stream:FileStream=new FileStream();//定义FileStream类实例,用以处理文件流
stream.open(student,FileMode.READ);//以读的方式打开文件
读取FileStream类中的数据。在使用FileStream类打开文件后,数据存储于FileStream变量中。可使用readUTFBytes方法读取数据。语法格式如下所示。
stream.readUTFBytes();
若要读取全部文件流数据,还要为readUTFBytes方法添加一个stream.bytesAvailable参数。将student.txt文件中的所有信息显示在id为txtTextArea的TextArea区域中,代码如下所示。
txtTextArea.text=stream.readUTFBytes(stream.bytesAvailable);
在文件数据流读取完毕后,还要记得执行关闭操作,代码如下所示。
stream.Close();
分享到:
相关推荐
在这个“Flex文件传输方式之File”的示例中,我们将探讨Flex4如何实现文件上传和下载功能,这对于任何需要用户交互处理本地文件的应用程序都是至关重要的。 在Flex中,`File`类是处理用户选择的本地文件的核心组件...
今天,我们将详细介绍 Unity 中的文件操作类别,包括 File、FileInfo、FileStream、StreamReader 和 StreamWriter 等类别的区别和联系。 File 类 File 类是 Unity 中用于文件操作的基本类别。它提供了一些静态方法...
在Flex中,文件系统的操作是通过File和FileStream类来实现的,这些类提供了对本地文件系统的访问和管理能力。 首先,我们要了解Flex中的File类。File类是Flex与本地文件系统交互的基础,它可以代表计算机上的任何...
首先,`FileStream`类是基于文件流的概念,允许我们以字节为单位读取或写入文件。在多文件上传场景中,我们可以依次打开每个文件,将其内容读取到内存,然后通过网络发送到服务器。以下是一个基本的多文件上传步骤:...
C#中提供了多种方式来实现文件的读写操作,其中最常用的方法是使用FileStream类和StreamReader类。 FileStream类是C#中最基本的文件流类,它可以读取和写入文件中的字节数据。该类提供了多种构造函数,可以根据不同...
这需要实时更新已传输文件的百分比。C#中,可以通过委托和事件来实现进度回调,例如: ```csharp public delegate void ProgressChangedEventHandler(int percent); ``` 当传输一个文件块时,触发这个事件,传递...
在C#编程中,文件流(FileStream)是用于读写磁盘文件的核心组件,它属于System.IO命名空间。本文将深入探讨C#中的文件流,包括它的基本概念、使用方法、常见操作以及与之相关的类。 文件流是.NET Framework提供的...
要读取文本文件,我们首先需要在Flex项目中引入`File`和`FileStream`类。这两个类分别属于`flash.filesystem`命名空间,它们是读写文件的核心工具。在ActionScript代码中,你可以这样导入它们: ```actionscript ...
文件流是.NET框架中处理文件的一种抽象概念,它将文件视为数据流,允许开发者以顺序的方式访问文件内容。`FileStream`是这个抽象的实现,提供了读写文件的低级接口。 ### 创建FileStream实例 要使用`FileStream`...
在.NET框架中,`File`、`FileInfo`和`FileStream`是处理文件输入输出(I/O)的关键类,它们都位于`System.IO`命名空间下。理解这些类的区别与联系对于编写涉及文件操作的代码至关重要。 `File`类提供了一系列静态...
在.NET框架中,`FileStream`类是用于读取和写入文件的核心类,它继承自`Stream`类,提供了一种高效且灵活的方式来处理文件数据。`FileStream`提供了对文件的随机访问,允许我们从任意位置读取或写入文件。下面我们将...
至于将数据另存为Excel文件,需要安装EPPlus库,它提供了一个简单的方式来创建和操作Excel文件,具体实现这部分功能需要了解EPPlus的API。 总的来说,这个项目展示了如何利用C#的文件系统API和FileStream类来处理...
这两个类是实现文件流和内存流的核心工具,广泛应用于各种场景,包括文件读写、数据传输以及在内存中的对象序列化和反序列化。 `FileStream`类是用于与磁盘上的文件进行交互的流类。它可以读取、写入或追加文件内容...
在IT领域,文件的安全性是至关重要的,尤其是在网络传输或存储过程中。为了保护数据不被未经授权的用户访问,我们通常会使用加密技术。本话题主要关注如何使用`FileStream`进行文件的加密和解密操作。`FileStream`是...
在C#中,我们可以利用System.IO命名空间中的FileStream类来处理文件流,以便读取和上传文件。以下是一些关键的知识点: 1. **多文件选择**:在WinForm中,可以使用OpenFileDialog控件让用户选择多个文件。通过设置...
FileStream对象表示在磁盘或网络路径上指向文件的流。这个类提供了在文件中读写字节的方法,但经常使用StreamReader或StreamWriter执行这些功能。这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是...
在不依赖任何第三方库或组件的情况下,我们可以通过文件流方式直接操作DBF文件。 DBF文件是一种基于磁盘的数据文件格式,它包含了表格数据和元数据,如字段名、数据类型和记录长度等。在C#中处理DBF文件,我们需要...
本文将详细介绍如何在Flex 4.6环境下,利用FlashPlayer 11读取Excel文件。Flex是一个基于ActionScript 3.0的开源框架,主要用于创建富互联网应用程序(RIA)。而Excel文件通常用于存储和处理表格数据,因此在Flex中...
例如,可以使用`FileStream`来读取文件,`BinaryReader`来读取文件内容,`MemoryStream`来存储分片数据,以及`File.WriteAllBytes`来写入分片到本地。以下是一个简单的文件分片示例: ```csharp using System.IO; ...