安卓DDMS打印信息不完整解决办法

32 篇文章 0 订阅
5 篇文章 0 订阅
以浏览器+html+js+css 方式开发安卓项目时
调试js时有时需要打印(console.log)出很多信息可能DDMS的text显示不完全

解决方法如下:

//在js中使用console.log的地方换为util.consoleNums(str)
		 util.consoleNums=function(str){
			var nums = parseInt(str.length/1024)+1;
			for(var i=0;i<nums;i++){
				console.log(str.substr(i*1024,1024));
			}
		}

这样可以分条全部打印出来,打印出来信息如下:

09-12 15:00:18.474: I/Web Console(2843): {"data":{"responseNo":"LifePlan:148689e0301719677","transType":"0","channelCode":"lifeplan","status":"100","errorCode":"A0000000","responseBody":{"elementList":[{"sequence":null,"rule":null,"inputType":"INPUT","name":"基本保险金额(元/份)","inputValue":null,"show":true,"code":"unitCoverage","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"交费年限","inputValue":"1310","show":true,"code":"paymentType","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"保险期间","inputValue":"200","show":true,"code":"durationOfInsurance","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"红利领取方式","inputValue":"12","show":true,"code":"bonusReceiveType","readonly":true,"tip":"*若您同时选择《附加财富管家年金保险(万能型)》,根据条款约定,红利、生存保险金自动转入万能账户参与投资结算。"},{"sequence":null,"rule":null,"inputType":"SELECT","name":"祝寿金领取年龄","inputValue":null,"show":true,"code":"getAge","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"份数","inputVal at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): ue":null,"show":true,"code":"fraction","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"保费小计","inputValue":null,"show":true,"code":"termPremium","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小份数","inputValue":"0.1","show":false,"code":"minFraction","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小单位份数","inputValue":"0.1","show":false,"code":"minUnitFraction","readonly":true,"tip":null}],"mustAddInsurance":[],"isInterestsDemo":true,"hasRiches":"false","premiumTable":["{paymentType:'1310',getAge:60,unitCoverage:7356,unitPremium:10000}","{paymentType:'1320',getAge:60,unitCoverage:8591,unitPremium:10000}","{paymentType:'1303',getAge:60,unitCoverage:2933,unitPremium:10000}","{paymentType:'1305',getAge:60,unitCoverage:4434,unitPremium:10000}","{paymentType:'1310',getAge:65,unitCoverage:9391,unitPremium:10000}","{paymentType:'1320',getAge:65,unitCoverage:12612,unitPremium:10000}","{paymentType:'1303',ge at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): tAge:65,unitCoverage:3548,unitPremium:10000}","{paymentType:'1305',getAge:65,unitCoverage:5456,unitPremium:10000}","{paymentType:'1310',getAge:70,unitCoverage:11181,unitPremium:10000}","{paymentType:'1320',getAge:70,unitCoverage:16122,unitPremium:10000}","{paymentType:'1303',getAge:70,unitCoverage:4092,unitPremium:10000}","{paymentType:'1305',getAge:70,unitCoverage:6359,unitPremium:10000}","{paymentType:'1310',getAge:75,unitCoverage:12745,unitPremium:10000}","{paymentType:'1320',getAge:75,unitCoverage:19156,unitPremium:10000}","{paymentType:'1303',getAge:75,unitCoverage:4572,unitPremium:10000}","{paymentType:'1305',getAge:75,unitCoverage:7152,unitPremium:10000}","{paymentType:'1310',getAge:80,unitCoverage:14093,unitPremium:10000}","{paymentType:'1320',getAge:80,unitCoverage:21717,unitPremium:10000}","{paymentType:'1303',getAge:80,unitCoverage:4990,unitPremium:10000}","{paymentType:'1305',getAge:80,unitCoverage:7841,unitPremium:10000}"],"isCalc":true},"errorMsg":null,"responseBodyJson":null,"transactionNo":nul at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): l,"responseTime":1410504459219,"costTime":204},"key":"0.5325127320829779"} at http://10.196.36.236:28001/ccb/static/js/all.js:18
这样就可查看全部信息了

当然也可以使用另外的方法

		 util.consoleNums=function(str){
			var nums = parseInt(str.length/1024)+1;
			for(var i=0;i<nums;i++){
				if(i==0){
					console.log(str.substr(i*1024,1024));
				}else{
					console.log("__"+str.substr(i*1024,1024));
				}
			}
		}

生成文件如下:

09-12 15:00:18.474: I/Web Console(2843): {"data":{"responseNo":"LifePlan:148689e0301719677","transType":"0","channelCode":"lifeplan","status":"100","errorCode":"A0000000","responseBody":{"elementList":[{"sequence":null,"rule":null,"inputType":"INPUT","name":"基本保险金额(元/份)","inputValue":null,"show":true,"code":"unitCoverage","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"交费年限","inputValue":"1310","show":true,"code":"paymentType","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"保险期间","inputValue":"200","show":true,"code":"durationOfInsurance","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"红利领取方式","inputValue":"12","show":true,"code":"bonusReceiveType","readonly":true,"tip":"*若您同时选择《附加财富管家年金保险(万能型)》,根据条款约定,红利、生存保险金自动转入万能账户参与投资结算。"},{"sequence":null,"rule":null,"inputType":"SELECT","name":"祝寿金领取年龄","inputValue":null,"show":true,"code":"getAge","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"份数","inputVal at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): __ue":null,"show":true,"code":"fraction","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"保费小计","inputValue":null,"show":true,"code":"termPremium","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小份数","inputValue":"0.1","show":false,"code":"minFraction","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小单位份数","inputValue":"0.1","show":false,"code":"minUnitFraction","readonly":true,"tip":null}],"mustAddInsurance":[],"isInterestsDemo":true,"hasRiches":"false","premiumTable":["{paymentType:'1310',getAge:60,unitCoverage:7356,unitPremium:10000}","{paymentType:'1320',getAge:60,unitCoverage:8591,unitPremium:10000}","{paymentType:'1303',getAge:60,unitCoverage:2933,unitPremium:10000}","{paymentType:'1305',getAge:60,unitCoverage:4434,unitPremium:10000}","{paymentType:'1310',getAge:65,unitCoverage:9391,unitPremium:10000}","{paymentType:'1320',getAge:65,unitCoverage:12612,unitPremium:10000}","{paymentType:'1303',ge at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): __tAge:65,unitCoverage:3548,unitPremium:10000}","{paymentType:'1305',getAge:65,unitCoverage:5456,unitPremium:10000}","{paymentType:'1310',getAge:70,unitCoverage:11181,unitPremium:10000}","{paymentType:'1320',getAge:70,unitCoverage:16122,unitPremium:10000}","{paymentType:'1303',getAge:70,unitCoverage:4092,unitPremium:10000}","{paymentType:'1305',getAge:70,unitCoverage:6359,unitPremium:10000}","{paymentType:'1310',getAge:75,unitCoverage:12745,unitPremium:10000}","{paymentType:'1320',getAge:75,unitCoverage:19156,unitPremium:10000}","{paymentType:'1303',getAge:75,unitCoverage:4572,unitPremium:10000}","{paymentType:'1305',getAge:75,unitCoverage:7152,unitPremium:10000}","{paymentType:'1310',getAge:80,unitCoverage:14093,unitPremium:10000}","{paymentType:'1320',getAge:80,unitCoverage:21717,unitPremium:10000}","{paymentType:'1303',getAge:80,unitCoverage:4990,unitPremium:10000}","{paymentType:'1305',getAge:80,unitCoverage:7841,unitPremium:10000}"],"isCalc":true},"errorMsg":null,"responseBodyJson":null,"transactionNo":nul at http://10.196.36.236:28001/ccb/static/js/all.js:18
09-12 15:00:18.484: I/Web Console(2843): __l,"responseTime":1410504459219,"costTime":204},"key":"0.5325127320829779"} at http://10.196.36.236:28001/ccb/static/js/all.js:18


这样全部信息打印不完整时除了第一行外其他行会以"__"开头 
 1.把每行截取掉前面的字符
 2.截取掉以"__"开头行的"__"字符
 3.截取掉以"__"开头行的前一行的 "at http://"信息


借助nodejs 的文件系统 formate.js

var fs = require('fs');
fs.readFile('E:/desktop/new  1.txt', function (err, data) {
	if (err)
		throw err;
	var text = data.toString();
	var results = {},result_return = "",lines = text.split('\r\n');
	var new_lines=[];
	var t_line_pre ="";
	for(var i=0;i<lines.length;i++){
		var t_line = lines[i].substr(41);
		if(t_line.indexOf("__")!=-1){
			t_line=t_line.substr(3);
			t_line_pre = new_lines.pop();
			new_lines.push(t_line_pre.substring(0,t_line_pre.indexOf("at http")-1));
		}
		new_lines.push(t_line);
	};
	
	// for(var i=0;i<new_lines.length;i++){
	// console.log("\n第"+i+"行 :"+new_lines[i]);
	// }
	
	//删除右斜杠 替换隐号左大括号 替换引号右大括号
	var resultBuffer = new Buffer(new_lines.join("\r\n").replace(/(\\)/g,"").replace(/("{)/g,'{').replace(/(}")/g,'}'));
	resultBuffer.write(result_return);
	fs.writeFile('E:/desktop/resut.txt', resultBuffer, function (err) {
		if (err)
			throw err;
		console.log('resut.txt has finished');
	});
});
把DDMS生成的日志信息直接复制到文件new  1.txt中
在运行node formate.js即可直接生成如下结果

{"data":{"responseNo":"LifePlan:148689e0301719677","transType":"0","channelCode":"lifeplan","status":"100","errorCode":"A0000000","responseBody":{"elementList":[{"sequence":null,"rule":null,"inputType":"INPUT","name":"基本保险金额(元/份)","inputValue":null,"show":true,"code":"unitCoverage","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"交费年限","inputValue":"1310","show":true,"code":"paymentType","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"保险期间","inputValue":"200","show":true,"code":"durationOfInsurance","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"SELECT","name":"红利领取方式","inputValue":"12","show":true,"code":"bonusReceiveType","readonly":true,"tip":"*若您同时选择《附加财富管家年金保险(万能型)》,根据条款约定,红利、生存保险金自动转入万能账户参与投资结算。"},{"sequence":null,"rule":null,"inputType":"SELECT","name":"祝寿金领取年龄","inputValue":null,"show":true,"code":"getAge","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"份数","inputVal
e":null,"show":true,"code":"fraction","readonly":false,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"保费小计","inputValue":null,"show":true,"code":"termPremium","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小份数","inputValue":"0.1","show":false,"code":"minFraction","readonly":true,"tip":null},{"sequence":null,"rule":null,"inputType":"INPUT","name":"最小单位份数","inputValue":"0.1","show":false,"code":"minUnitFraction","readonly":true,"tip":null}],"mustAddInsurance":[],"isInterestsDemo":true,"hasRiches":"false","premiumTable":[{paymentType:'1310',getAge:60,unitCoverage:7356,unitPremium:10000},{paymentType:'1320',getAge:60,unitCoverage:8591,unitPremium:10000},{paymentType:'1303',getAge:60,unitCoverage:2933,unitPremium:10000},{paymentType:'1305',getAge:60,unitCoverage:4434,unitPremium:10000},{paymentType:'1310',getAge:65,unitCoverage:9391,unitPremium:10000},{paymentType:'1320',getAge:65,unitCoverage:12612,unitPremium:10000},{paymentType:'1303',ge
Age:65,unitCoverage:3548,unitPremium:10000},{paymentType:'1305',getAge:65,unitCoverage:5456,unitPremium:10000},{paymentType:'1310',getAge:70,unitCoverage:11181,unitPremium:10000},{paymentType:'1320',getAge:70,unitCoverage:16122,unitPremium:10000},{paymentType:'1303',getAge:70,unitCoverage:4092,unitPremium:10000},{paymentType:'1305',getAge:70,unitCoverage:6359,unitPremium:10000},{paymentType:'1310',getAge:75,unitCoverage:12745,unitPremium:10000},{paymentType:'1320',getAge:75,unitCoverage:19156,unitPremium:10000},{paymentType:'1303',getAge:75,unitCoverage:4572,unitPremium:10000},{paymentType:'1305',getAge:75,unitCoverage:7152,unitPremium:10000},{paymentType:'1310',getAge:80,unitCoverage:14093,unitPremium:10000},{paymentType:'1320',getAge:80,unitCoverage:21717,unitPremium:10000},{paymentType:'1303',getAge:80,unitCoverage:4990,unitPremium:10000},{paymentType:'1305',getAge:80,unitCoverage:7841,unitPremium:10000}],"isCalc":true},"errorMsg":null,"responseBodyJson":null,"transactionNo":nul
,"responseTime":1410504459219,"costTime":204},"key":"0.5325127320829779"} at http://10.196.36.236:28001/ccb/static/js/all.js:18

格式化后还会出现

 {
	"sequence" : null,
	"rule" : null,
	"inputType" : "INPUT",
	"name" : "份数",
	"inputVal
	e" : null,
	"show" : true,
	"code" : "fraction",
	"readonly" : false,
	"tip" : null
}, 

注意份数后面两行 是因为那里有个换行符还不知道怎么解决 

在利用bat文件 新建formate.bat文件内容如下(只有一行) node是cmd可直接调用的 js路径是完整路径
node C:\Users\openks\formate.js


这样就可以通过双击formate.bat来格式化E:/desktop/new  1.txt中的文件到E:/desktop/resut.txt了
直接看resut.txt文件就可以了(要格式化下额)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值