[unity3d]网络文件本地存储的四种方式

简介: unity本地缓存 WWW.LoadFromCacheOrDownload (string url,int version) http协议 1 2 3 4 5 6 7 8...
  • unity本地缓存

WWW.LoadFromCacheOrDownload (string url,int version)

  • http协议

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
using UnityEngine;
using System.Collections;
using System.IO;
using System.Net;
  
public class HttpTest : MonoBehaviour {
    void Start () {
        Stream outStream = File.Create(Application.streamingAssetsPath + "/test.html");
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://yitaike.svfree.net/1.03/Animations/888.html");
        WebResponse response =  request.GetResponse();
        Stream inStream = response.GetResponseStream();
      
        int bufferSize = 1024;
        int readCount;
        byte[] buffer = new byte[bufferSize];
        readCount = inStream.Read(buffer, 0, bufferSize);
        while (readCount > 0)
        {
            outStream.Write(buffer, 0, readCount);
            readCount = inStream.Read(buffer, 0, bufferSize);
        }
      
        outStream.Close();
        inStream.Close();
        response.Close();
    }
}

  • ftp协议

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
30
31
32
33
34
using UnityEngine;
using System.Collections;
using System;
using System.IO;
using System.Net;
  
public class FtpTest : MonoBehaviour {
    void Start () {
        FileStream outputStream = new FileStream(Application.streamingAssetsPath + "/test.html", FileMode.Create);
        FtpWebRequest reqFTP = FtpWebRequest.Create(""as FtpWebRequest;
          
        reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
        reqFTP.UseBinary = true;
        reqFTP.Credentials = new NetworkCredential("yitaike""dxc1314");
          
        FtpWebResponse response = reqFTP.GetResponse() as FtpWebResponse;
          
        Stream ftpStream = response.GetResponseStream();
        int bufferSize = 1024;
        int readCount;
        byte[] buffer = new byte[bufferSize];
      
        readCount = ftpStream.Read(buffer, 0, bufferSize);
        while (readCount > 0)
        {
            outputStream.Write(buffer, 0, readCount);
            readCount = ftpStream.Read(buffer, 0, bufferSize);
        }
          
        ftpStream.Close();
        outputStream.Close();
        response.Close();
    }
}

  • unity www类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using UnityEngine;
using System.Collections;
using System.IO;
  
public class WWWTest : MonoBehaviour {
    IEnumerator Start () {
        Stream outStream = File.Create(Application.streamingAssetsPath + "/test.html");
        WWW www = new WWW("http://yitaike.svfree.net/1.03/Animations/888.html");
        yield return www;
        byte[] buffer = www.bytes;
        outStream.Write(buffer, 0, buffer.Length);
        outStream.Close();
    }
}
相关文章
|
4月前
|
前端开发 JavaScript 安全
开源一款剪贴板跨设备共享工具
`shigen`,编程博主,擅长多种语言,近期自制了一个名为`copyhub`的工具,用于局域网内跨设备同步剪贴板。设计灵感源于对现有共享工具的安全顾虑,采用`Flask`和`Redis`实现,前端直接HTML+JS,简化架构。用户通过取件码交换内容,不涉及复杂功能。代码已开源并在个人腾讯云服务器上部署。更多详情见shigen的GitHub和哔哩哔哩频道。一起探索,每天进步!
90 1
开源一款剪贴板跨设备共享工具
|
4月前
|
存储 移动开发 缓存
uniapp本地存储的几种方式
uniapp本地存储的几种方式
506 0
|
24天前
|
消息中间件 关系型数据库 Serverless
【阿里云】一键部署创建函数计算服务以处理多媒体文件
通过阿里云的一键部署功能,轻松创建函数计算服务以处理多媒体文件。首先选择地域并配置资源栈名称及其他必要参数,如登录凭证、实例类型及数据库配置。过程中可能需开通相关服务如消息服务MNS,并确保账户有足够的余额。完成配置后,系统自动创建资源栈。当状态显示“创建成功”即部署完毕。最后,通过提供的URL及凭据访问应用,上传PPTX文件进行处理,并下载处理后的结果。
63 5
|
3月前
|
存储 JSON 图形学
【unity实战】制作unity数据保存和加载系统——小型游戏存储的最优解
【unity实战】制作unity数据保存和加载系统——小型游戏存储的最优解
88 0
|
4月前
|
存储 JavaScript 前端开发
本地存储的讲解及代码操作。
本地存储的讲解及代码操作。
|
4月前
|
前端开发 JavaScript
前端 dlhelper 下载辅助库(支持链接后台下载、代理下载、Blob 数据下载,针对代理下载灵活使用)
前端 dlhelper 下载辅助库(支持链接后台下载、代理下载、Blob 数据下载,针对代理下载灵活使用)
63 1
|
11月前
|
存储 JSON API
使用 JDAudioCrawler 将下载的音频存储到本地存储
使用 JDAudioCrawler 将下载的音频存储到本地存储
|
存储 缓存 Kubernetes
数据缓存系列分享(一):打开大模型应用的另一种方式
容器镜像的加速技术如今已经非常成熟,比如阿里云容器镜像缓存,还有p2p分发技术以及开源的dadi、nydus等按需加载技术,然而这些加速技术对于大模型文件的加载都很难有显著的效果。 MaaS的概念最近开始被提出,模型已经逐渐开始具备相对独立的存储、版本管理能力,也有类OCI的概念被提出,模型与应用的解耦会是必然的一个趋势。 为了解决模型加载与容器镜像加载解耦的问题,我们提供了模型缓存的技术,让模型无需从远端的仓库加载,也不用打包进应用的镜像里,就可以直接像加载本地的文件一样使用模型,而且在模型缓存的制作、使用流程上做了极大的简化。
1651 1
数据缓存系列分享(一):打开大模型应用的另一种方式
|
存储 前端开发
前后分离项目 —— 前端实现本地存储(数据可供其他页面使用)
前后分离项目 —— 前端实现本地存储(数据可供其他页面使用)
163 1
|
存储 小程序
小程序-本地存储StorageSync的相关用法
小程序-本地存储StorageSync的相关用法
154 0
下一篇
DDNS