Android学习之JSON字符串格式化,自动缩进
来源:互联网 发布:ubuntu ipython 使用 编辑:程序博客网 时间:2024/05/23 20:09
/** * JSON字符串格式化成JSON结构 * * @author lzy * */public class JSONTool { public static String stringToJSON(String strJson) { // 计数tab的个数 int tabNum = 0; StringBuffer jsonFormat = new StringBuffer(); int length = strJson.length(); char last = 0; for (int i = 0; i < length; i++) { char c = strJson.charAt(i); if (c == '{') { tabNum++; jsonFormat.append(c + "\n"); jsonFormat.append(getSpaceOrTab(tabNum)); } else if (c == '}') { tabNum--; jsonFormat.append("\n"); jsonFormat.append(getSpaceOrTab(tabNum)); jsonFormat.append(c); } else if (c == ',') { jsonFormat.append(c + "\n"); jsonFormat.append(getSpaceOrTab(tabNum)); } else if (c == ':') { jsonFormat.append(c + " "); } else if (c == '[') { tabNum++; char next = strJson.charAt(i + 1); if (next == ']') { jsonFormat.append(c); } else { jsonFormat.append(c + "\n"); jsonFormat.append(getSpaceOrTab(tabNum)); } } else if (c == ']') { tabNum--; if (last == '[') { jsonFormat.append(c); } else { jsonFormat.append("\n" + getSpaceOrTab(tabNum) + c); } } else { jsonFormat.append(c); } last = c; } return jsonFormat.toString(); } // 是空格还是tab private static String getSpaceOrTab(int tabNum) { StringBuffer sbTab = new StringBuffer(); for (int i = 0; i < tabNum; i++) { sbTab.append('\t'); } return sbTab.toString(); }}
2 0
- Android学习之JSON字符串格式化,自动缩进
- JSON字符串格式化,自动缩进 ---Android基础篇
- 将python数据结构导出成字符串并自动缩进格式化
- dreamweaver使用技巧之格式化代码自动缩进
- javascript 格式化 json字符串
- 格式化JSON数据字符串
- java 格式化json字符串
- json字符串 格式化数据
- Json字符串格式化
- JSON字符串格式化
- json字符串格式化
- Java Json字符串格式化
- JSON.stringify格式化Json字符串
- python学习之缩进
- Python学习之字符串格式化详解
- python基础学习之字符串的格式化
- Python学习之字符串格式化详解
- Python语言学习之二:字符串格式化
- WWDC2017于6月5日至9日在硅谷举行
- fast-RCNN论文笔记(3)
- 公布几个设备的sysObjectId取值
- 驱动入门hello实例解析
- 【软考】算法-选择
- Android学习之JSON字符串格式化,自动缩进
- 转行程序员的故事
- cocoapods私有库
- linux下vi命令大全
- 天气接口
- setsockopt用法大全
- 疯牛(aggressive cows)
- android design library提供的TabLayout的用法
- JDBC