js与flash配合读取本地文件内容到页面中例子

本文也没什么技术可说的,在说主题前,我还想吐槽一下,自己没写过flash,都是通过百度然后再修修改改才得以实现的,本来是想找已离职同事(flash程序员)帮忙写的,结果不是说忙就是说没做过这样的功能,不知道是不想帮还是……

算了,不说了,直接上代码:

AS3代码:

import flash.events.*;
import flash.net.FileReference;
import flash.net.FileFilter;
import flash.external.ExternalInterface;
 
var fileRef:FileReference;
 
this.stage.addEventListener(MouseEvent.CLICK,clickAction);
 
function clickAction(evt:Event):void
{
    fileRef = new FileReference();
    fileRef.addEventListener(Event.SELECT, onFileSelected);
    fileRef.addEventListener(Event.CANCEL, onCancel);
    fileRef.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
    fileRef.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onSecurityError);
    var textTypeFilter:FileFilter = new FileFilter("请选择文本文件 (*.txt)","*.txt");
    fileRef.browse([textTypeFilter]);
}
 
function onFileSelected(evt:Event):void
{
    fileRef.addEventListener(ProgressEvent.PROGRESS, onProgress);
    fileRef.addEventListener(Event.COMPLETE, onComplete);
    fileRef.load();
}
 
function onProgress(evt:ProgressEvent):void
{
    //trace("Loaded " + evt.bytesLoaded + " of " + evt.bytesTotal + " bytes.");
    ExternalInterface.call('getFileContent','loading','正在读取文件中...'+(evt.bytesLoaded/evt.bytesTotal*100)+'%'); /// as调用js的方法
}
function onComplete(evt:Event):void
{
    //trace("File was successfully loaded.");
    //trace(fileRef.data);
    //ExternalInterface.addCallback(); /// 提供给js调用的as方法
    ExternalInterface.call('getFileContent','complete',fileRef.data.toString()); /// as调用js的方法
}
function onIOError(evt:IOErrorEvent):void
{
    //trace("There was an IO Error.");
    ExternalInterface.call('getFileContent','error',"读取文件失败"); /// as调用js的方法
}
function onSecurityError(evt:Event):void
{
    //trace("There was a security error.");
    ExternalInterface.call('getFileContent','error',"由于浏览器安全限制无法读取文件"); /// as调用js的方法
}
function onCancel(evt:Event):void
{
    //trace("The browse request was canceled by the user.");
}

js代码:
 
// 供flash调用
function getFileContent(){
        console.log(arguments)
}

代码就这么多了。本来是想通过js+服务端实现,但需求没说让移动端兼容,所以用flash可以减少服务端的请求而且读取文件内容的速度也快。

虽然flash是一个过时的东西,还是记录在这里吧,以便以后会用。

时间: 2024-10-24 16:41:04

js与flash配合读取本地文件内容到页面中例子的相关文章

B/S结构系统 JS读取本地文件内容

问题描述 B/S结构系统在JSP中通过JS调用fso不能读取本地文件内容??请问如何解决??? 解决方案 解决方案二:帮顶回复内容太短了解决方案三:看看你的ie中关于安全的设置.如果不是ie...阿弥陀佛goodluck解决方案四:我公司从事软件外包,现在在招聘网上很难找到愿意外包的软件工程师,特在此寻找人才,有意向的请联系我,0571-56884997

JS通过ajax动态读取xml文件内容的方法_javascript技巧

本文实例讲述了JS通过ajax动态读取xml文件内容的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码读取note.xml文件,并填充显示相关字段 HTML文件代码如下 <!DOCTYPE html> <html> <head> <script> function loadXMLDoc(url) { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome,

JS通过ajax动态读取xml文件内容的方法

 这篇文章主要介绍了JS通过ajax动态读取xml文件内容的方法,实例分析了Ajax操作XML文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了JS通过ajax动态读取xml文件内容的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码读取note.xml文件,并填充显示相关字段 HTML文件代码如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3

php读取本地文件常用函数(fopen与file_get_contents)_php基础

下面我们以.txt文件为实例来介绍php读取本地文件的函数,读取文件我们可以利用fopen或file_get_contents来读取,file_get_contents更简单而fopen需要fread配合才可以显示读出的内容. 1.首先来介绍一下fopen()函数 下面我们给出了一个直接打开本地文件的代码demo,必要的地方我们都已经加上了注释: 复制代码 代码如下:     //直接打开一个本地文件的实例代码       <?php       //假若我们本地的文件是一个名为xmlas.tx

jQuery读取XML文件内容的方法

 这篇文章主要介绍了jQuery读取XML文件内容的方法,实例分析了jQuery操作XML文件的技巧,需要的朋友可以参考下     本文实例讲述了jQuery读取XML文件内容的方法.分享给大家供大家参考.具体实现方法如下:   代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.

nginx 如何读取本地文件获取参数

问题描述 nginx 如何读取本地文件获取参数 最近遇到开发一个需求:前提我们使用nginx做方向代理,后端tomcat:请求的uri类似 http://www.test.com/********/abc/abc/*:其中 二级目录/********/ 是根据用户随机生成的11位id 与用户是一一对应的:问题:现有后端tomcatA 更改bug后或者优化了部分功能,我们没有重新部署tomcatA,而是重新搭建了一个新的后台tomcatB,因为nginx代理的tomcatA 这样就没办法测试tom

编写Socket客户端和服务器程序,客户端读取本地文件的数据,发送到服务器,服务器接收并存储到文件中。

问题描述 2.编写Socket客户端和服务器程序,客户端读取本地文件的数据,发送到服务器,服务器接收并存储到文件中.消息格式:字段长度(单位字节)内容--------------------------------------------------------------------len8整个消息长度,不包括这4个字节,类型为longfile_name_length1文件名长度,bytefile_namefile_name_length文件名,Stringdata_length8文件数据长度

ashx文件上传控件直接读取Excel文件内容的问题

问题描述 各位高手大家好,本人想请教个技术问题啊.我在本地页面放了一个上传控件想通过ajax的方式来读取用户上传上来的Excel的文件内容,但是不想把Excel先上传到服务器在读取,想直接读取,请参考代码:ashx文件:publicvoidProcessRequest(HttpContextcontext){stringfu=context.Request["fu"];//客户端上传上来的文件路径DataTabledt=ExcelDataSource(context.Server.Ma

android华为手机读取本地文件夹图片获取path路径null,求指导

问题描述 android华为手机读取本地文件夹图片获取path路径null,求指导 android华为手机读取本地文件夹图片获取path路径null,求指导 解决方案 public String getImagePathFromURI(Uri uri) { Cursor cursor = getActivity().getContentResolver().query(uri null null null null); String path = null; if (cursor != null