Unity下载文件一般用WWW或UnityWebRequest ,这两种都是异步模式,但有时需要使用同步模式。
bool DownloadElevation(string url, string filePath)
{
try
{
Stream outStream;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
WebResponse response = request.GetResponse();
Stream inStream = response.GetResponseStream(); // get http
byte[] b = new byte[1024]; // Get the length of each
FileInfo fi = new FileInfo(filePath);
//Application.persistentDataPath unity for the next read-write directory Andrews
outStream = fi.Create(); // create a file
int readCount = inStream.Read(b, 0, b.Length); // read stream
while (readCount > 0)
{
outStream.Write(b, 0, readCount); // write stream
readCount = inStream.Read(b, 0, b.Length); // read stream
}
outStream.Close();
inStream.Close();
response.Close();
}
catch (System.Exception ex)
{
Debug.Log("下载出错:"+ex.Message);
return false;
}
return true;
}