using UnityEngine;
using System.Collections;
using System.Net;
using System.IO;
public class FileLoader : BaseBehaviour
{
void Start ()
{
m_httpReq = (HttpWebRequest)HttpWebRequest.Create("http://www.jb51.net?hl=zh-CN");
HttpWebResponse response = (HttpWebResponse)m_httpReq.GetResponse();
if (response.StatusCode != HttpStatusCode.PartialContent)
{
m_fs = new FileStream(Application.dataPath + "/zhCn.html",FileMode.Create);
}
m_ns = response.GetResponseStream();
}
void Update ()
{
m_readSize = m_ns.Read(m_buff,m_buff.Length);
if (m_readSize > 0)
{
m_fs.Write(m_buff,m_readSize);
}
else
{
m_fs.Close();
m_ns.Close();
}
}
private HttpWebRequest m_httpReq;
private Stream m_fs,m_ns;
private int m_readSize;
private byte[] m_buff = new byte[1024 * 8];
}
建议新建一个线程进行下载,否则会卡住ui主线程
参考我另外一篇文章
《unity增量更新(配置表、lua、资源)》
https://blog.csdn.net/linxinfa/article/details/93619223
文章末尾有多线程下载的逻辑
另,分享一个开源的Unity多线程下载Demo
https://github.com/ihaiucom/ihaiu.MultiThreadDownload
原文地址:https://linxinfa.blog.csdn.net
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。