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();   
             }
    }
  • 相关阅读:
    10.11-10.16
    10.8-10.10
    9.26-28
    9.29css继承属性
    表单的学习
    排版
    css补充
    今天学的新内容
    新内容
    文本样式的修改
  • 原文地址:https://www.cnblogs.com/bq12345/p/3167166.html
Copyright © 2011-2022 走看看