【问题标题】:How to open local file from Tide SDK app如何从 Tide SDK 应用程序打开本地文件
【发布时间】:2013-04-28 19:50:02
【问题描述】:

我正在使用 Tide SDK 构建一个 Windows 应用程序。如何从我的应用程序打开本地文件。例如,我的硬盘中某处有一个 pdf 文件。我将该文件的链接放到我的应用程序中。当我点击链接时,我希望它使用与 pdf 类型文件关联的默认程序打开 pdf 文件。

如果不可能,那么我还有一个更一般的问题。任何使用 html5 和 javascript 构建的应用程序都可以访问本地文件系统吗?

【问题讨论】:

    标签: javascript windows html tidesdk


    【解决方案1】:

    我们可以在tidesdk应用程序中访问本地文件系统。

    见以下代码。

    var contents;      
    var file= 'test.txt';      
    var Dir = Ti.Filesystem.getUserDirectory();        
    var readfi= Ti.Filesystem.getFile(Dir, file);      
    if (readfi.exists())
    {     
       var Stream = Ti.Filesystem.getFileStream(readFi);    
       Stream.open(Ti.Filesystem.MODE_READ);     
       contents =Stream.read();  
       alert( contents );  
       Stream.close();    
    } 
    

    上面的代码会读取文本文件并提醒内容。访问 here 了解tidesdk文件系统。

    以下代码将在默认浏览器中打开给定的 URL。

    Ti.Platform.openURL('http://stackoverflow.com');
    

    以下代码将在系统默认程序中打开给定的应用程序或文件。

    Ti.Platform.openApplication('C:/Documents and Settings/Thavamani00/Desktop/readme.txt');
    Ti.Platform.openApplication('C:/Documents and Settings/Thavamani00/Desktop/cart15.png');
    

    以上代码在记事本中显示文本文件,在mircosoft图片管理器中显示图像。

    它对我很有效。我希望它是您需要的答案。

    【讨论】:

    • 您的解决方案将读取文件内容并显示出来。我需要的是单击文件链接,它将由关联的应用程序打开。例如,点击一个pdf文件链接会用adobe acrobat reader打开文件,用notepad打开文本文件,用firefox浏览器打开html文件等等……
    • 麻雀先生,这是可能的。我在那里编辑了我的帖子,你可以解决你的问题。
    • Ti.Filesystem.getFileStream(readFi);这条线应该有错字'readfi'。 :)
    • 是否可以编辑它以获取图像的 src 数据而不是仅仅读取文本文件?
    猜你喜欢
    • 2014-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-08
    • 2014-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多