//
|
// NSString+PBCategory.m
|
// ProBIM
|
//
|
// Created by zjf on 2017/10/19.
|
// Copyright © 2017年 ProBIM. All rights reserved.
|
//
|
|
#import "NSString+PBCategory.h"
|
#import <CommonCrypto/CommonDigest.h>
|
@implementation NSString (PBCategory)
|
+ (NSString *)convertToJson:(NSDictionary *)dict {
|
NSError *parseError = nil;
|
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&parseError];
|
return [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
|
}
|
+ (NSString *)arrConvertToJson:(NSArray *)arr {
|
NSError *error = nil;
|
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:arr options:NSJSONWritingPrettyPrinted error:&error];
|
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
|
return jsonString;
|
}
|
+ (id)convertTodictionaryOrArr:(NSString *)jsonStr {
|
if (jsonStr == nil || [jsonStr isEqualToString:@""]) {
|
return nil;
|
}
|
NSData *jsonData = [jsonStr dataUsingEncoding:NSUTF8StringEncoding];
|
NSError *error = nil;
|
id jsonObject = [NSJSONSerialization JSONObjectWithData:jsonData
|
options:NSJSONReadingAllowFragments
|
error:nil];
|
|
if (jsonObject != nil && error == nil){
|
return jsonObject;
|
}else{
|
// 解析错误
|
return nil;
|
}
|
}
|
|
//+ (NSString *)getSandboxUserID {
|
// NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
// NSString *documents = [array lastObject];
|
// NSString *documentPath = [documents stringByAppendingPathComponent:@"dic.plist"];
|
// NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
// return [resultDic valueForKey:@"UserId"];
|
//}
|
//+ (NSString *)getSandboxAccount {
|
// NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
// NSString *documents = [array lastObject];
|
// NSString *documentPath = [documents stringByAppendingPathComponent:@"dictt.plist"];
|
// NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
// return [resultDic valueForKey:@"Account"];
|
//}
|
|
//+ (NSString *)getSandboxRealName {
|
// NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
// NSString *documents = [array lastObject];
|
// NSString *documentPath = [documents stringByAppendingPathComponent:@"dict.plist"];
|
// NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
// return [resultDic valueForKey:@"RealName"];
|
//}
|
+ (NSString *)getUniqueStrByUUID {
|
CFUUIDRef uuidObj = CFUUIDCreate(nil);//create a new UUID
|
NSString *uuidString = (__bridge_transfer NSString *)CFUUIDCreateString(nil, uuidObj);
|
CFRelease(uuidObj);
|
return uuidString ;
|
}
|
+ (UIImage *)imageDecoding:(NSString *)str {
|
//Base64字符串转UIImage图片:
|
NSData *decodedImageData = [[NSData alloc]
|
initWithBase64EncodedString:str options:NSDataBase64DecodingIgnoreUnknownCharacters];
|
|
UIImage *decodedImage = [UIImage imageWithData:decodedImageData];
|
return decodedImage;
|
}
|
|
+ (NSString *)imagebase64:(UIImage *)image {
|
NSData *data = UIImageJPEGRepresentation(image,0.5);
|
NSString *encodedImageStr = [data base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
|
return encodedImageStr;
|
|
}
|
+ (NSString *)md5Encryption:(NSString *)str {
|
const char *cStr = [str UTF8String];
|
unsigned char digest[CC_MD5_DIGEST_LENGTH];
|
CC_MD5( cStr, strlen(cStr), digest ); // This is the md5 call
|
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
|
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
|
[output appendFormat:@"%02x", digest[i]];
|
return output;
|
}
|
+(NSDictionary *)getLoginData {
|
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
NSString *documents = [array lastObject];
|
NSString *documentPath = [documents stringByAppendingPathComponent:@"login.plist"];
|
NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
return resultDic;
|
}
|
+ (NSDictionary *)getApiData {
|
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
NSString *documents = [array lastObject];
|
NSString *documentPath = [documents stringByAppendingPathComponent:@"api.plist"];
|
NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
return resultDic;
|
}
|
+ (NSArray *)getApiArrData {
|
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
NSString *documents = [array lastObject];
|
NSString *documentPath = [documents stringByAppendingPathComponent:@"apiArr.plist"];
|
NSArray *arr = [NSArray arrayWithContentsOfFile:documentPath];
|
return arr;
|
}
|
+ (NSString *)getToken {
|
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
NSString *documents = [array lastObject];
|
NSString *documentPath = [documents stringByAppendingPathComponent:@"token.plist"];
|
NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
return [resultDic valueForKey:@"token"];
|
}
|
+ (NSDictionary *)getCodeIp {
|
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
|
NSString *documents = [array lastObject];
|
NSString *documentPath = [documents stringByAppendingPathComponent:@"code.plist"];
|
NSDictionary *resultDic = [NSDictionary dictionaryWithContentsOfFile:documentPath];
|
return resultDic;
|
}
|
+(NSString *)urlEncodeStr:(NSString *)input{
|
// NSString *charactersToEscape = @"?!@#$^&%*+,:;='\"`<>()[]{}/\\| ";
|
// NSCharacterSet *allowedCharacters = [[NSCharacterSet characterSetWithCharactersInString:charactersToEscape] invertedSet];
|
// NSString *upSign = [input stringByAddingPercentEncodingWithAllowedCharacters:allowedCharacters];
|
// return upSign;
|
|
NSString *encodedString = (NSString *)
|
CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
|
|
(CFStringRef)input,
|
|
(CFStringRef)@"!$&'()*+,-./:;=?@_~%#[]",
|
|
NULL,
|
|
kCFStringEncodingUTF8));
|
return encodedString;
|
|
}
|
|
|
@end
|