zoukankan      html  css  js  c++  java
  • Android与服务器端交互

      关于如何解析成JSON数组

    import java.beans.IntrospectionException;
    import java.beans.Introspector;
    import java.beans.PropertyDescriptor;
    import java.util.List;
    
    /**
     * json的操作类
     * @author NanGuoCan
     *
     */
    public class JsonUtil {
          
            /**
              * @param object
              *             任意对象
              * @return java.lang.String
              */  
            public static String objectToJson(Object object) {   
                 StringBuilder json = new StringBuilder();   
                if (object == null) {   
                     json.append("""");   
                 } else if (object instanceof String || object instanceof Integer) { 
                     json.append(""").append(object.toString()).append(""");  
                 } else {   
                     json.append(beanToJson(object));   
                 }   
                return json.toString();   
             }   
          
            /**
              * 功能描述:传入任意一个 javabean 对象生成一个指定规格的字符串
              *
              * @param bean
              *             bean对象
              * @return String
              */  
            public static String beanToJson(Object bean) {   
                 StringBuilder json = new StringBuilder();   
                 json.append("{");   
                 PropertyDescriptor[] props = null;   
                try {   
                     props = Introspector.getBeanInfo(bean.getClass(), Object.class)   
                             .getPropertyDescriptors();   
                 } catch (IntrospectionException e) {   
                 }   
                if (props != null) {   
                    for (int i = 0; i < props.length; i++) {   
                        try {  
                             String name = objectToJson(props[i].getName());   
                             String value = objectToJson(props[i].getReadMethod().invoke(bean));  
                             json.append(name);   
                             json.append(":");   
                             json.append(value);   
                             json.append(",");  
                         } catch (Exception e) {   
                         }   
                     }   
                     json.setCharAt(json.length() - 1, '}');   
                 } else {   
                     json.append("}");   
                 }   
                return json.toString();   
             }   
          
            /**
              * 功能描述:通过传入一个列表对象,调用指定方法将列表中的数据生成一个JSON规格指定字符串
              *
              * @param list
              *             列表对象
              * @return java.lang.String
              */  
            public static String listToJson(List<?> list) {   
                 StringBuilder json = new StringBuilder();   
                 json.append("[");   
                if (list != null && list.size() > 0) {   
                    for (Object obj : list) {   
                         json.append(objectToJson(obj));   
                         json.append(",");   
                     }   
                     json.setCharAt(json.length() - 1, ']');   
                 } else {   
                     json.append("]");   
                 }   
                return json.toString();   
             }
    }
  • 相关阅读:
    tomcat 配置ssi
    oracle exp imp 导入 正在跳过表 plsql 导入表 成功终止 数据 被导入
    oracle 创建数据表空间和用户
    移动端开发来个总结吧
    ssl四次握手
    面试-布局
    typeof的原理?
    马上面试了就,复习一下排序
    关于webview无法设置页面标题
    关于let的生命提升
  • 原文地址:https://www.cnblogs.com/bq12345/p/3167166.html
Copyright © 2011-2022 走看看