using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Text;
namespace UpdatePhoto
{
public partial class UpdatePhoto : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string id = Request.Form["id"];
HttpPostedFile hfc = Request.Files["Photo"];
if (hfc == null) return;
Stream sm = hfc.InputStream;
byte[] buffer = new byte[sm.Length];
sm.Read(buffer, 0, buffer.Length);
sm.Close();
string path = Request.PhysicalApplicationPath + id + "\\";
//判断路径是否存在
if (!Directory.Exists(path))
{
//如果不存在就创建
Directory.CreateDirectory(path);
}
//产生文件名
string fileName = path + id + "_" + DateTime.Now.ToString("yyyy-MM-dd_hh-mm-ss") + "_" + DateTime.Now.Millisecond.ToString() + ".png";
Stream flstr = new FileStream(fileName, FileMode.Create);
BinaryWriter sw = new BinaryWriter(flstr, Encoding.Unicode);
sw.Write(buffer);
flstr.Close();
sw.Close();
}
}
}
Client:
using UnityEngine;
using System.Collections;
public class updatePhoto : MonoBehaviour {
// Use this for initialization
void Start () {
StartCoroutine(ScreenShot());
}
IEnumerator ScreenShot(){
int width = Screen.width;
int height = Screen.height;
// string path = Application.dataPath+"/Resources/";
yield return new WaitForEndOfFrame();
Texture2D tex = new Texture2D(width,height,TextureFormat.RGB24,false);
tex.ReadPixels(new Rect(0,0,width,height),0,0);
//tex.ReadPixels(new Rect(0, 0, width, height), 0, 0);
tex.Apply();
byte[] bytes = tex.EncodeToPNG();
WWWForm newForm = new WWWForm();
newForm.AddField("id","123");
newForm.AddBinaryData("Photo",bytes,"photo.jpg");
WWW w = new WWW("http://localhost:36944/UpdatePhoto.aspx", newForm);
while (!w.isDone){yield return new WaitForEndOfFrame();}
if (w.error != null){Debug.LogError(w.error);}
}
}