js的一些基本应用,时间久了容易忘记。先记这吧
function lastname(){
//获取欲上传的文件路径
var filepath = document.getElementById("img").value;
//为了避免转义反斜杠出问题,这里将对其进行转换
var re = /(\\+)/g;
var filename=filepath.replace(re,"#");
//对路径字符串进行剪切截取
var one=filename.split("#");
//获取数组中最后一个,即文件名
var two=one[one.length-1];
//再对文件名进行截取,以取得后缀名
var three=two.split(".");
//获取截取的最后一个字符串,即为后缀名
var last=three[three.length-1];
//添加需要判断的后缀名类型
var tp ="jpg,gif,bmp,JPG,GIF,BMP,png";
//返回符合条件的后缀名在字符串中的位置
var rs=tp.indexOf(last);
//如果返回的结果大于或等于0,说明包含允许上传的文件类型
if(rs!=-1){
return true;
}else{
alert("您选择的上传文件不是有效的图片文件!");
//$('#subbutton').attr("disabled", "disabled");
return false;
}
}
js操作本地文件,这个需要更改浏览器的安全设置才能有效果的,前面的代码是对字符串进行的base64编码
function base64encode(str) {
var out, i, len;
var c1, c2, c3;
len = str.length;
i = 0;
out = "";
while(i < len) {
c1 = str.charCodeAt(i++) & 0xff;
if(i == len)
{
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt((c1 & 0x3) << 4);
out += "==";
break;
}
c2 = str.charCodeAt(i++);
if(i == len)
{
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt((c2 & 0xF) << 2);
out += "=";
break;
}
c3 = str.charCodeAt(i++);
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
out += base64EncodeChars.charAt(c3 & 0x3F);
}
return out;
}
function getInfo(){
var declin=';';
var imei;
var curr_staff_num;
var update_staff_num;
var password;
var ip;
var port;
var resendTime;
var dowmloadPage;
var commandPage;
var dataTransportPage;
imei = document.forms[0].imei.value;
curr_staff_num ='<bean:write name="te" property="terminal_no" scope="request"/>';
update_staff_num = document.forms[0].terminal_no.value;
password = '<bean:write name="constant" property="constant_password" scope="request"/>';
ip = '<bean:write name="constant" property="constant_ip" scope="request"/>';
port = '<bean:write name="constant" property="constant_port" scope="request"/>';
resendTime = '<bean:write name="constant" property="constant_connection_time" scope="request"/>';
dowmloadPage = '<bean:write name="constant" property="constant_down_address" scope="request"/>';
commandPage = '<bean:write name="constant" property="constant_command_address" scope="request"/>';
dataTransportPage = '<bean:write name="constant" property="constant_location_address" scope="request"/>';
var str = imei+declin+curr_staff_num+declin+update_staff_num+
declin+password+declin+ip+declin+port
+declin+resendTime+declin+dowmloadPage+
declin+commandPage+declin+dataTransportPage+declin;
return str;
//alert(str);
}
//保存至移动设备
function saveToTermianl(){
var str = getInfo();
//alert(str);
var dealStr = base64encode(str);
//alert(dealStr);
//操作本地文件的对象
var fso = new ActiveXObject("Scripting.FileSystemObject");
var drives = "c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r"; //,s,t,u,v,w,x,y,z";
var array = drives.split(",");
for(var i =0 ;i<array.length;i++){
var filepath = array[i]+":\\QinYiApp\\Settting\\profile.bin";
alert(filepath);
if (fso.FileExists(filepath)){
//alert("fold exists");
var f1 = fso.CreateTextFile(array[i]+":\\QinYiApp\\Settting\\SettingInfo.txt", true);
f1.WriteLine(dealStr);
f1.close();
alert('文件已成功写入终端,请断开终端与电脑连接并重启终端!');
document.forms[0].submit();
return;
}
}
alert('修改设置失败!没发现终端设备请将终端连接好电脑,并选择存储模式!');
window.close();
}
分享到:
相关推荐
总结来说,JavaScript验证上传文件大小主要通过监听文件输入字段的`change`事件,获取文件对象,然后检查`size`属性。结合HTML和CSS,我们可以创建一个交互式的文件上传界面,提供友好的用户反馈。这个功能对于任何...
在Node.js环境中,将本地文件上传到服务器是一个常见的任务,主要应用于文件共享、数据备份、内容发布等场景。本文将详细讲解如何使用Node.js实现这一功能。 首先,我们需要理解Node.js的基本概念。Node.js是一个...
2. **jquery.validate.js**:这个插件用于表单验证,确保用户在上传文件之前满足所有要求,如文件类型、大小等。它提供了许多自定义规则和消息,可扩展性强。 3. **jquery.MultiFile.js**:这个插件专门用于实现多...
`<input type="file">`允许用户选择本地文件,通过设置`accept`属性可以限制可选的文件类型,如`accept=".jpg, .jpeg, .png"`。 5. **事件处理**: 使用`addEventListener`绑定`change`事件到文件输入元素,当用户...
1. **文件一致性检查**:在下载文件后,通过计算本地文件的MD5值并与服务器提供的MD5值进行比较,确认文件完整性。 2. **密码存储**:尽管MD5不安全用于密码保护(因为容易碰撞),但在一些简单场景下,可能会用MD5...
总结一下,"jsp+js+oracle 实现文件上传数据库,下载到本地"涉及到的关键技术包括: 1. JSP:处理服务器端的文件上传和下载请求。 2. JavaScript:在客户端进行文件选择的验证和预览。 3. Oracle数据库:存储上传的...
它允许开发者读取文件内容,获取文件信息,甚至在本地进行文件操作,如切割和合并。 2. **FormData对象**:在上传文件时,FormData对象是必不可少的。它可以将文件和其他表单数据打包在一起,然后通过...
在JavaScript中,`<input type="file">`元素是用于让用户选择本地文件并上传到服务器的一个常见组件。本文将深入探讨如何使用JavaScript处理文件上传,特别是针对图片的上传操作。 一、HTML `<input type="file">` ...
在前端开发中,确保用户上传的是真实的图片文件是非常重要的安全措施。传统的检查方式是通过文件的后缀名来判断,但这种方法存在明显的漏洞,因为恶意...同时,配合后端服务器的验证,可以构建更加安全的文件上传系统。
在JavaScript中实现文件上传是一项常见的任务,特别是在Web开发中,它允许用户选择本地文件并通过网络发送到服务器。在这个“js实现文件上传-demo02”的示例中,我们将深入探讨这一过程涉及的关键知识点。 1. **...
通过`<input type="file">`元素,用户可以选择本地文件,然后通过JavaScript对这些文件进行读取、操作甚至在客户端预览,而无需提交到服务器。 2. **FormData对象**:在JavaScript中,FormData对象用于创建一个可以...
1. **HTML5 File API**: 这是现代浏览器提供的一组接口,用于读取、写入和操作本地文件。通过FileReader对象,可以将用户选择的文件内容读取为字符串,进而进行编辑操作。 2. **ace-editor / codemirror**: 这是两...
文件上传是通过HTML的`<input type="file">`元素触发的,用户可以选择本地文件,然后通过表单提交到服务器。在JavaScript中,可以监听`change`事件来获取用户选择的文件信息。 2. **HTML部分**: 创建一个文件...
为了实现文件的分块上传,示例代码使用了`ActiveXObject`对象来读取本地文件。需要注意的是,`ActiveXObject`是Internet Explorer特有的一种技术,在现代浏览器中可能无法正常工作。这意味着此段代码可能只适用于IE...
SpringBoot的Controller可以通过`@RequestParam`注解获取文件信息,然后通过文件操作API进行相应的处理。 在文件存储方面,可以选择本地存储或者云存储服务(如阿里云OSS、腾讯COS等)。本地存储简单易用,但可能会...
2. **JavaScript(js)在文件上传中的作用**:JavaScript通常用于实现文件上传的交互逻辑,包括选择文件、预览文件、验证文件类型与大小、分块上传、进度条显示等功能。在描述中提到的文章链接,很可能是讲解如何...
此外,为了防止恶意文件上传,服务器端通常会进行文件类型和大小的验证。 8. **权限控制** 文件上传可能涉及到用户隐私,因此应遵循最小权限原则,只允许用户上传必要的文件,并确保上传的文件不会对系统造成安全...
HTML5的File API允许JavaScript直接访问和操作用户的本地文件,包括读取文件内容、检查文件类型、上传文件等。在PHPCMS的上传功能中,File API可能被用来创建文件对象、读取文件信息、监听文件选择事件,甚至在上传...
`wx.chooseImage`可以让用户从相册或者相机中选取图片,`wx.saveFile`用于将临时文件保存至本地,`wx.uploadFile`则是上传本地文件到服务器的关键接口。 2. **文件选择**:用户在手机文件管理器中选择文件,通常...
Node.js的`fs`模块提供了读写文件的能力,例如`fs.readFile()`和`fs.writeFile()`,可以用来读取和保存JSON数据到本地文件。 3. **用户登录**: 用户尝试登录时,通常会提供用户名和密码。在正常情况下,这些信息...