离线传送的文件内容可以保存7天时间,如超过7天时间接收方没有接收文件,系统将自动删除该文件。
系统为不同等级的会员用户每天分配不同的空间用于存放离线文件,会员用户在成长旅途里可以不断享受到成长的乐趣,空间大小与等级对应。如果是web程序,就在页面上放图<img src='服务器域名/保存的文件路径名/文件名' />
如果是窗体程序,就要在显示界面上加入图形显示控件,放入文件的完整路径
canvas画布保存为:
var image = new Image();
imagesrc = canvastoDataURL("image/png");
return image;
canvas参数为你的canvas对象,返回一个对象,你可以将这个image放到网页结构中,如果要保存图像,可以将canvastoDataURL("image/png")返回的base64格式的数据放到input(type=hidden)中,用户点击上传按钮(或设置表单自动提交),将base64格式的数据上传
形如:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABbSURBVDhPY8AFMvJL/oMwlEs8yMgvJVcjyMbSYaERogCC0/OAGIkPwaVQMUhgQWiggWANIAzUhKoBpgjdMIhBUHsxAdxkUgHMBiiXeDAQNkICAsolHuC3kYEBAG/wdxC2W2tUAAAAAElFTkSuQmCC
服务器端接收到字符串(以上字符串可以直接在浏览器中打开,IE低版本就算了,能用canvas的浏览器都可以)后根据data:image/png得知应该保存的文件类型扩展名(png),然后将base64,后面的base64编码字符串解码(后端语言实现,如PHP用base64_decode()函数),将解码后的二进制数据以二进制的形式保存到服务器上(形式)
如果存数据库,可以直接存base64编码,读取时候解码也行,建议以文件形式存储,数据库不适合存大文件
你说的压缩,实际上就是生成缩略图。你利用 postedFileInputStream 生成缩略图后,缩略图可以直接保存到服务器上成为文件,不需要再保存到 postedFile 中了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)