Jelajahi Sumber

Common

部分转换函数移动到RACConvertor里
Ray Zhang 8 tahun lalu
induk
melakukan
b42264fa87
3 mengubah file dengan 108 tambahan dan 2 penghapusan
  1. 3 2
      common/NetworkUtils.m
  2. 9 0
      common/RAConvertor.h
  3. 96 0
      common/RAConvertor.m

+ 3 - 2
common/NetworkUtils.m

@@ -10,6 +10,7 @@
 #import "RAUtils.h"
 #import "Reachability.h"
 #import "RANetworkTaskDelegate.h"
+#import "RAConvertor.h"
 
 #define BOUNDARY @"AaB03x"
 
@@ -200,7 +201,7 @@ repeat:
                                                                  error:nil];
             if(![url isEqualToString:recorder_url])
             {
-                [self err_log:[RAUtils base64en:[RAUtils dict2string:params]] result:[RAUtils base64en:[RAUtils dict2string:ret]] module:url code:RESULT_NET_ERROR];
+                [self err_log:[RAUtils base64en:[RAConvertor dict2string:params]] result:[RAUtils base64en:[RAConvertor dict2string:ret]] module:url code:RESULT_NET_ERROR];
             }
             return jsonData;
             
@@ -230,7 +231,7 @@ repeat:
                     int result=[[jsobj valueForKey:@"result"] intValue];
             if(![url isEqualToString:recorder_url]&&/*![url isEqualToString:URL_DOWNLOAD_OFFLINE]&&*/result!=2&&result!=99)
             {
-                [self err_log:[RAUtils base64en:[RAUtils dict2string:params]] result:[RAUtils base64en:str] module:url code:result];
+                [self err_log:[RAUtils base64en:[RAConvertor dict2string:params]] result:[RAUtils base64en:str] module:url code:result];
             }
             NSData *jsonData = [NSJSONSerialization dataWithJSONObject:jsobj
                                                                options:0

+ 9 - 0
common/RAConvertor.h

@@ -10,4 +10,13 @@
 
 @interface RAConvertor : NSObject
 +(NSString*)DataTOjsonString:(id)object;
++(NSArray*)Dict2KVArray:(NSDictionary*) dict trim:(bool)trim;
+
+
++(NSString*) arr2string:(NSArray *) arr separator:(NSString*)separator trim:(bool) btrim;
++(NSString*) arr2string:(NSArray *) arr separator:(NSString*)separator trim:(bool) btrim brackets:(NSString*)brackets;
+
+
++(NSDictionary*) string2dict:(NSString*) str;
++(NSString*) dict2string:(NSDictionary*) dict;
 @end

+ 96 - 0
common/RAConvertor.m

@@ -25,4 +25,100 @@
     }
     return jsonString;
 }
++(NSArray*)Dict2KVArray:(NSDictionary*) dict trim:(bool)trim
+{
+    NSMutableArray* ret = [NSMutableArray new];
+    for(NSString* key in [dict allKeys])
+    {
+        NSMutableDictionary* kv = [NSMutableDictionary new];
+        kv[@"key"] = key;
+        if(trim)
+        {
+ 
+            
+            if([dict valueForKey:key]==nil)
+                continue;
+            
+            NSString* val = [NSString stringWithFormat:@"%@",[dict valueForKey:key]];
+            if(val.length==0)
+                continue;
+                
+        }
+        kv[@"value"] = [dict valueForKey:key];
+        
+        [ret addObject:kv];
+        
+    }
+    return ret;
+}
+
++(NSString*) arr2string:(NSArray *) arr separator:(NSString*)separator trim:(bool) btrim
+{
+    if(arr.count==0)
+        return nil;
+    NSMutableArray * marr = [arr mutableCopy];
+    
+begin:
+    for (NSString* item in marr) {
+        if(item.length==0 )
+            if( btrim)
+            {
+                
+                [marr removeObject:item];
+                goto begin;
+            }
+        
+    }
+    NSString * ret = [marr componentsJoinedByString:separator];
+    return ret;
+}
++(NSString*) arr2string:(NSArray *) arr separator:(NSString*)separator trim:(bool) btrim brackets:(NSString*)brackets
+{
+    if(brackets!=nil)
+        separator = [NSString stringWithFormat:@"%@%@%@",brackets,separator,brackets];
+    NSMutableArray * marr = [arr mutableCopy];
+begin:
+    for (NSString* item in marr) {
+        if(item.length==0 )
+            if( btrim)
+            {
+                
+                [marr removeObject:item];
+                goto begin;
+            }
+        
+        
+        
+    }
+    NSString * ret = [marr componentsJoinedByString:separator];
+    
+    if(brackets!=nil)
+        ret = [NSString stringWithFormat:@"%@%@%@",brackets,ret,brackets];
+    
+    return ret;
+}
+
+
++(NSData*) dict2data:(NSDictionary*) dict
+{
+    if(dict==nil)
+        return nil;
+    // 将NSDictionary转化为NSData
+    NSData *data = [NSJSONSerialization dataWithJSONObject:dict options:kNilOptions error:nil];
+    return data;
+}
++(NSString*) dict2string:(NSDictionary*) dict
+{
+    
+    if(dict==nil)
+        return nil;
+    
+    // 将NSDictionary转化为NSData
+    NSData *data = [NSJSONSerialization dataWithJSONObject:dict options:kNilOptions error:nil];
+    
+    // 再将NSData转为字符串
+    NSString *jsonStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
+    
+    return jsonStr;
+}
 @end