//保存地图图片实体类
public class Save_Map_Picture
{
private byte[] photo;//公用缓冲区
public string SourFilePath;//源图片文件路径
public string ObjFilePath;//目标图片路径
public int FileToStream(MemoryStream stream) //文件到流的转换
{
photo = stream.ToArray();
stream.Close();
return 0;
}
public int StreamToFile() //流转换为图片文件
{
byte[] bytes = photo;
string time = DateTime.Now.ToString();
char[] b = new char[1];
b[0] = ' ';
string[] timearr,timearr_date,timearr_time;
timearr = time.Split(b);
b[0] = '-';
timearr_date = timearr[0].Split(b);
b[0] = ':';
timearr_time = timearr[1].Split(b);
time = timearr_date[0] + "_" + timearr_date[1] + "_" + timearr_date[2]+"_"+timearr_time[0] + "_" + timearr_time[1] + "_" + timearr_time[2];;
FileStream fs = new FileStream("D:\\GPS警车行驶路线图http://www.cnblogs.com/carekee/admin/file://gps_gj_%22+time+%22.png/", FileMode.Create, FileAccess.Write);
fs.Write(bytes, 0, bytes.Length);
fs.Flush();
fs.Close();
return 0;
}
}
[Serializable]
public class Get_Map_Picture : MapBaseCommand
{
public Get_Map_Picture ()
{
Name = "Get_Map_Picture ";
}
public override void Process()
{
MapControlModel model = MapControlModel.GetModelFromSession();
model.SetMapSize(MapAlias, MapWidth, MapHeight);
try
{
MapInfo.Mapping.Map map = model.GetMapObj(MapAlias);
}
finally
{
System.IO.MemoryStream ms = model.GetMap(MapAlias, MapWidth, MapHeight, ExportFormat);///地图图片流
Save_Map_Picture pic = new Save_Map_Picture();
pic.FileToStream(ms); //把地图流写入缓冲区
int a=pic.StreamToFile(); //将缓冲区数据写入文件中
HttpContext.Current.Response.Output.Write(a); //向客户端报告保存成功与否
}
}
}