1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- //
- // NSString+NTES.m
- // NIMDemo
- //
- // Created by chris on 15/2/12.
- // Copyright (c) 2015年 Netease. All rights reserved.
- //
- #import "NSString+NTES.h"
- #import <CommonCrypto/CommonDigest.h>
- @implementation NSString (NTES)
- - (CGSize)stringSizeWithFont:(UIFont *)font{
- return [self sizeWithAttributes:@{NSFontAttributeName:font}];
- }
- - (NSString *)MD5String {
- const char *cstr = [self UTF8String];
- unsigned char result[16];
- CC_MD5(cstr, (CC_LONG)strlen(cstr), result);
- return [NSString stringWithFormat:
- @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
- result[0], result[1], result[2], result[3],
- result[4], result[5], result[6], result[7],
- result[8], result[9], result[10], result[11],
- result[12], result[13], result[14], result[15]
- ];
- }
- - (NSUInteger)getBytesLength
- {
- NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
- return [self lengthOfBytesUsingEncoding:enc];
- }
- - (NSString *)stringByDeletingPictureResolution{
- NSString *doubleResolution = @"@2x";
- NSString *tribleResolution = @"@3x";
- NSString *fileName = self.stringByDeletingPathExtension;
- NSString *res = [self copy];
- if ([fileName hasSuffix:doubleResolution] || [fileName hasSuffix:tribleResolution]) {
- res = [fileName substringToIndex:fileName.length - 3];
- if (self.pathExtension.length) {
- res = [res stringByAppendingPathExtension:self.pathExtension];
- }
- }
- return res;
- }
- - (NSString *)tokenByPassword
- {
- //demo直接使用username作为account,md5(password)作为token
- //接入应用开发需要根据自己的实际情况来获取 account和token
- return [[NIMSDK sharedSDK] isUsingDemoAppKey] ? [self MD5String] : self;
- }
- @end
|