1. 用Jquery实现读取文件的内容(2个Json类型的文件),并将文件内容复制到另一个文件中。(另一个Json文件中) (附近代码中的combine_files.html)
2. 检查生成的Json文件是否正确, 即是否所有的文件内容都被复制了(check_correct.html), 这个文件只是简单的检查一下你源文件的个数和生成新的文件中,数组里面元素的个数,如果元素相等,说明我们的做法是正确的。
3. combine_files.html因为用到了ActiveXObject对象,所以只能运行在IE中。直接用IE打开并解除阻止即可。
4. check_correct.html可以运行在任何浏览器中。
5. 具体可下载附近进行运行。
6. 但其实这种方法只是为了方便平时做一些操作时用的方法,因为直接用javascript或者Jquery等页面端的Script去直接操作操作系统上的文件本身就是不被允许的。
1. combine_files.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-1.7.1.js"></script>
<script type="text/javascript">
$(function() {
var fileArray = new Array();
var fso = new ActiveXObject("Scripting.FileSystemObject");
var path = "C:\\DOC\\CMS_Related\\ESX_VCenter\\combine_files\\"
var filePath = path + "src"
var sourceFolder = fso.GetFolder(filePath);
// Get array of files in the sourceFolder
var files = new Enumerator(sourceFolder.Files);
for (i=0; !files.atEnd(); files.moveNext()) {
var name = files.item().name;
fileArray.push(name);
}
var all = "[";
for(var i=0; i < fileArray.length; i++){
if (i!=0) {
all = all +',';
}
$.ajax({
type: "GET",
url: "src/" + fileArray[i],
dataType: "text",
success: function(rs) {
all = all + rs;
},
error: function() {
alert("error");
}
});
}
all = all + "]";
allFile = fso.CreateTextFile(path + "all.json", true);
allFile.Write(all);
allFile.Close();
alert("All data in all.json!!!");
});
</script>
</head>
<body>
<div id="all"></div>
</body>
</html>
2. check_correct.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-1.7.1.js"></script>
<script type="text/javascript">
$(function() {
$.ajax({
type: "GET",
url: "all.json",
dataType: "json",
success: function(rs) {
alert(rs.length);
},
error: function() {
alert("error");
}
});
});
</script>
</head>
<body>
</body>
</html>