主要的代码是红色区域,HTML5获取本地文件对象并进行操作
//给上传按钮添加点击事件
$(".myappTXTUploadBtn").click(function(){ var filepath = $(".uploadFace").val().trim();
if(filepath == ""){
showBlackPage("请您选择要上传的txt文件","请您选择要上传的txt文件");
return;
}
var last = filepath.substr(filepath.lastIndexOf(".")+1);
if(last == "txt"){
var file = $(".uploadFace")[0].files[0];
var reader = new FileReader();
reader.readAsText(file, "GB2312");
var urlData;
reader.onload = function (e) {
urlData = this.result;
var dataarray = urlData.split("\n");
var objs = "[";
var index = 1;
for(var i=0;i<dataarray.length;i++){
var data = dataarray[i].trim();
if(data == ""){
continue;
}else{
var namestart = data.indexOf("【");
var nameend = data.lastIndexOf("】");
var str = "";
if(namestart != -1 && nameend != -1){
var obj = {};
obj.replytxt = data.substr(namestart+1,nameend-1);
str += data.substr(namestart+1,nameend-1);
var imgstart = data.indexOf("〖");
var imgend = data.lastIndexOf("〗");
if(imgstart != -1 && imgend != -1){
obj.receiveimg = data.substr(imgstart+1,imgend-nameend-2);
str += "\n"+data.substr(imgstart+1,imgend-nameend-2);
obj.receivetxt = data.substr(imgend+1);
str += "\n"+data.substr(imgend+1);
}else{
obj.receivetxt = data.substr(nameend+1);
str += "\n"+data.substr(nameend+1);
}
obj.myappid = index;
index++;
objs += JSON.stringify(obj)+",";
}else{
continue;
}
}
}
objs = objs.substr(0,objs.lastIndexOf(","));
objs += "]"
if(weixinid != ""){
$.ajax({
type:"POST",
url:"/api2/app/myappadd?",
data:{
weixinid:weixinid,
"myapp":objs
},
success:function(serverData){
showBlackPage(serverData["提示信息"],serverData["提示信息"]);
}
});
}else{
alert("您还没有绑定微信公众账号");
}
}
}else{
alert("您上传的不是txt文件");
}
});

js读取本地磁盘文本文件并保存为JSON数据(有格式的文本)的更多相关文章

  1. 手工创建tomcat应用,以及实现js读取本地文件内容

    手工创建tomcat应用: 1.在webapps下面新建应用目录文件夹 2.在文件夹下创建或是从其他应用中复制:META-INF,WEB-INF这两个文件夹, 其中META-INF清空里面,WEB-I ...

  2. js读取本地图片并显示

    抄自 http://blog.csdn.net/qiulei_21/article/details/52785191 js读取本地图片并显示 第一种方法比较好 版权声明:本文为博主原创文章,未经博主允 ...

  3. Tomcat服务器如何读取本地磁盘数据?

    实际问题: 如何让用户下载本地磁盘的资源文件呢?  在server.xml文件中配置虚拟路径如下(以下代码放在Host标签之中即可): 例如: 具体含义: 把本地磁盘目录 "D:\uploa ...

  4. js读取本地json/txt/xml存在跨越问题,可以用jsonp 读取本地json文件

    想自己用 js写一个原生的ajax请求,访问本地文件,json/txt.但是demo,写了一个后,发现 原来是跨域了. js 写的原生ajax 请求代码如下 html代码 <div id=&qu ...

  5. json数据的格式,JavaScript、jQuery读取json数据

    JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON的特点: JSON 是纯文本 JSON 具有“自我描述性”(人类可读) JSON 具有层级 ...

  6. 使用JS读取本地文本文件(兼容各种浏览器)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. js 读取本地文件(必须通过input控件才能实现) 及 下载文件

    js 操作 文件的实现原理: 1.js是不能直接操作(读写)文件的,html的  input[type="file"] 控件是可以读取文件数据(获取文件数据流)的.js可以获取这个 ...

  8. JS读取本地文件及目录的方法

    Javascript是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼.富有朝气.但也许你还没有发现并应用它的一些更高级 的功能吧?比如,对文件和文件夹进行读.写和删除,就象在VB.VC等 ...

  9. js读取本地txt文件中的json数据

    list.txt内容 [ {"optionKey":"1", "optionValue":"Canon in D"}, ...

随机推荐

  1. 【转载】Using the Web Service Callbacks in the .NET Application

    来源 This article describes a .NET Application model driven by the Web Services using the Virtual Web ...

  2. OpenTSDB案例总结

    加宽行可增加扫描速度 采用组合rowkey,利用数据本地性加快扫描 少数宽行,并不比多数窄行节省空间 缩短Column family 和 column的名字 合并若干列.

  3. 完美卸载SQL Server 2008的方案

    转自完美卸载SQL Server 2008的方案 针对SQL数据库卸载不完全的现象,做了如下总结:   1,控制面板 卸载   首先,打开控制面板,按照"安装时间"进行排序,卸载S ...

  4. 超级 Ping 监测工具——为您的网络状态保驾护航

    关于 Ping Ping 是一个网络命令,主要是用于确定本地主机是否能与另一台主机交换(发送与接收)数据.根据返回的信息,就可以推断 TCP/IP 参数是否设置得正确以及运行是否正常.正常情况下,Pi ...

  5. 李洪强iOS开发之-cocopods安装

  6. WIN32和Kernel)直接读写硬盘扇区

    第一篇写技术的文章哦,以前好少写文章,我的文字表达很差劲,大家不要笑哦.前几天仙剑4通关了,感觉好惆怅,什么都不想去做.今天看了一下书发现一篇比较好玩的文章,于是自己静静地实践一番.文章是<基于 ...

  7. VS2005 检测内存泄漏的方法(转载)

    一.非MFC程序可以用以下方法检测内存泄露: 1.程序开始包含如下定义: #ifdef _DEBUG #define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __F ...

  8. Android用户界面 UI组件--ImageView及其子类ImageButton,QuickContactBadge附带Draw9Patch工具说明

    1.ImageView 常用属性: android:src 设置可绘制对象作为 ImageView 显示的内容 android:cropToPadding 如果设置为true,图片裁剪到保留该Imag ...

  9. 设置VS2015上关闭和打开tab快捷键

    Ctrl+W关闭Tab: Tools > Options > Environment > Keyboard > File.Close > Use new shortcut ...

  10. 【HDOJ】3832 Earth Hour

    其实就是bfs,不过也可以写成最短路,因为权重为1,可以用Spira解. /* 3832 */ #include <iostream> #include <string> #i ...