博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios Base62加密解密
阅读量:7186 次
发布时间:2019-06-29

本文共 1990 字,大约阅读时间需要 6 分钟。

最近的项目用到Base62的加密解谜方法,本来还打算去网上找找呢,结果没有objective-c版本的,就自己写了个, 因为Base62加密数值用的,所以作为NSString的Category写的。下面放上源码: 头文件: // // NSString+Base62.h // GameHouse // // Created by wanyakun on 13-3-19. // Copyright (c) 2013年 the9. All rights reserved. // #import @interface NSString (Base62) +(NSString *)base62Encode:(int)number; +(int) base62Decode:(NSString *)string; @end 实现文件: // // NSString+Base62.m // GameHouse // // Created by wanyakun on 13-3-19. // Copyright (c) 2013年 the9. All rights reserved. // #import "NSString+Base62.h" @implementation NSString (Base62) +(NSString *)base62Encode:(int)number { NSArray *array = @[@"0", @"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9", @"a", @"b", @"c", @"d", @"e", @"f", @"g", @"h", @"i", @"j", @"k", @"l", @"m", @"n", @"o", @"p", @"q", @"r", @"s", @"t", @"u", @"v", @"w", @"x", @"y", @"z", @"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"J", @"K", @"L", @"M", @"N", @"O", @"P", @"Q", @"R", @"S", @"T", @"U", @"V", @"W", @"X", @"Y", @"Z"]; NSString *base62 = [NSString stringWithFormat:@""]; do { base62 = [[array objectAtIndex:number%62] stringByAppendingString:base62]; number /= 62; } while (number >= 1); return base62; } +(int)base62Decode:(NSString *)string { if (string == nil || [string isEqualToString:@""]) { return 0; } NSArray *array = @[@"0", @"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9", @"a", @"b", @"c", @"d", @"e", @"f", @"g", @"h", @"i", @"j", @"k", @"l", @"m", @"n", @"o", @"p", @"q", @"r", @"s", @"t", @"u", @"v", @"w", @"x", @"y", @"z", @"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"J", @"K", @"L", @"M", @"N", @"O", @"P", @"Q", @"R", @"S", @"T", @"U", @"V", @"W", @"X", @"Y", @"Z"]; int base10 = 0; int length = [string length]; for (int i = 0; i < length; i++) { int number = [array indexOfObject:[string substringWithRange:NSMakeRange(i, 1)]]; base10 += number * powf(62, length-i-1); } return base10; } @end 再把两个文件的压缩包放出来,可以直接使用:

转载于:https://www.cnblogs.com/wanyakun/archive/2013/03/20/3403333.html

你可能感兴趣的文章
单链表的删除
查看>>
输入函数
查看>>
Session,Cookie的问题
查看>>
记录前端遇到的坑
查看>>
Matlab查看数值不用科学计数法显示
查看>>
C# 读取资源文件.resx 中的xml资源
查看>>
python版mapreduce题目实现寻找共同好友
查看>>
提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
查看>>
前端性能优化(css动画篇)
查看>>
用户体验评价
查看>>
[SCOI2012]滑雪与时间胶囊
查看>>
phonegap ios开发环境搭建
查看>>
NOIP2003 传染病控制
查看>>
【java】深入分析Java ClassLoader原理
查看>>
c# 自定义事件,实现变量的值改变后就触发该事件
查看>>
AMD OpenCL大学教程(8)
查看>>
【转】实现运动的尾巴效果
查看>>
leetcode Permutations II 无重全排列
查看>>
微信开发好的地址
查看>>
Linux菜鸟级重点
查看>>