123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- //
- // iTools.h
- // VclustersGemini
- //
- // Created by 余衡武 on 2020/4/1.
- // Copyright © 2020 APPLE. All rights reserved.
- //
- #import <Foundation/Foundation.h>
- NS_ASSUME_NONNULL_BEGIN
- @interface iTools : NSObject
- #pragma mark 字典、数组转JSONString
- /** 字典转JSONString */
- + (NSString *)getJSONStringFromDictionary:(NSDictionary *)dict;
- /** 数组转JSONString */
- + (NSString *)getJSONStringFromArray:(NSArray *)array;
- #pragma mark 时间戳
- /** 获取当前时间戳-以秒为单位-return NSInteger */
- + (NSInteger)getNowTimeStamp;
- /** 获取当前时间戳-以秒为单位-return yyyy/MM/dd HH:mm */
- + (NSString *)getNowTimeString;
- /** 获取当前时间戳-以秒为单位-return yyyyy年MM月dd日 HH:mm:ss */
- + (NSString *)getNowTimeString1;
- /** 获取当前时间戳-以秒为单位-return yyyyy-MM-dd HH:mm:ss */
- + (NSString *)getNowTimeString2;
- + (NSString *)getNowTimeString3;
- /** 获取当前时间戳-以毫秒为单位-return NSInteger */
- + (NSInteger)getNowTimeStampSS;
- /** 获取当前时间戳-以毫秒为单位--return YYYYMMddhhmmssSSS */
- + (NSString *)getNowTimeStampString;
- /** 获取当前时间戳-以天为单位--return yyyy-MM-dd */
- + (NSString *)getNowDateString;
- /** 获取现在到某个时间点的时间戳*/
- + (NSInteger)getNowTimeStampToInterval:(NSTimeInterval)second;
- /** 把字符串转时间戳Date YYYYMMddhhmmssSSS*/
- + (NSDate *)getTimeStringToDate:(NSString *)timeStr;
- /**时间戳转字符串-yyyy/MM/dd HH:mm*/
- + (NSString *)getTimeStringFromTimeInterval:(NSInteger)timeInterval;
- /** 秒转播放时间HH:mm:ss */
- + (NSString *)getPlayTimeStringFromTimeInterval:(NSTimeInterval)timeInterval;
- /** 把字符串转时间戳Date YYYYMMddhhmmssSSS 2024-05-24 20:44:57 返回 x天 多少时 多少分*/
- + (NSString *)getTimeStringToExpirationDate:(NSString *)timeStr;
- #pragma mark 通讯录备份
- //ypp add 通讯录文件名格式YmdHis+随机数字(1000~9999) 2020 07 07 15 08 25 1000
- + (NSString *)getContactsNameStr;
- #pragma mark 绘制图片
- /** 根据颜色绘制图片 */
- + (UIImage*)createImageWithColor:(UIColor*)color;
- /** 根据颜色和view 绘制指定大小的图片 */
- + (UIImage *)imageFromColor:(UIColor *)color view:(UIView *)view;
- /** 根据颜色和rect 绘制指定大小的图片 */
- + (UIImage *)getImageFromColor:(UIColor *)color rect:(CGRect)rect;
- /** 根据颜色和size 绘制指定大小的图片 */
- + (UIImage *)createImageWithColor:(UIColor *)color withSize:(CGSize)size;
- /**根据uiview得到图像UIImage*/
- + (UIImage *)getImageFromView:(UIView *)fromView useScreenScale:(BOOL)use useNewMethod:(BOOL)useNewMethod;
- /**彩色图变黑白图*/
- + (UIImage*)getGrayImageFromImage:(UIImage*)sourceImage;
- #pragma mark 绘制圆角
- /**圆角切割*/
- + (CAShapeLayer *)getCornerRoundWithSelfView:(UIView *)originalView byRoundingCorners:(UIRectCorner)corners cornerRect:(CGRect)rect;
- + (CAShapeLayer *)getCornerRoundWithSelfView:(UIView *)originalView byRoundingCorners:(UIRectCorner)corners cornerRect:(CGRect)rect radius:(CGFloat)radius;
- #pragma mark 小数取整 (不四舍五入)
- /** 小数取整 不四舍五入 */
- + (NSString *)notRounding:(float)price afterPoint:(int)position;
- /** 小数取整 不四舍五入 */
- + (CGFloat)notRoundingFloat:(float)price afterPoint:(int)position;
- /** 小数点格式化*/
- + (NSString *)formatFloat:(float)f;
- #pragma mark 字符串处理
- /** 去除字符串中所有的空格和换行符(包括中间和首尾) */
- + (NSString *)removeSpaceAndNewline:(NSString *)str;
- /** 获取拼音首字母(传入汉字字符串, 返回大写拼音首字母)*/
- + (NSString *)FirstCharactor:(NSString *)pString;
- #pragma mark 系统语言
- /** 获取当前系统的语言 */
- + (NSString *)getCurrentLocalizableLanguage;
- /** 当前语言是否为中文 */
- + (BOOL)isChineseLanguage; /** 得到当前语言是否为中文 */
- #pragma mark push到指定vc
- /**push到vc 控制器
- * 1、NavigationController之前有push过就back
- * 2、NavigationController之前没有push过就push
- */
- + (void)pushVCWithBackOrPushFromNvc:(UINavigationController *)nvc toVc:(UIViewController *)vc;
- #pragma mark 文件大小格式化
- /**将文件大小B 自动转成对应的B KB MB GB**/
- + (NSString *)getFileSizeStringFormedValue:(NSInteger)value;
- #pragma mark 获取文件MD5值
- /**获取文件MD5值*/
- + (NSString*)getFileMD5WithPath:(NSString*)path;
- #pragma mark 关闭声音
- /**关闭其他播放声音*/
- + (void)closeVoice;
- #pragma mark 其他
- /**防止N秒内,同部同接口频繁调用的处理*/
- + (BOOL)timeOverTosecode:(NSInteger)index bannerOldTime:(NSString *)bannerOldTime;
- /**根据文件ID 获取文件中心文件URL地址*/
- + (NSURL *)getFileUrlFromFileID:(NSString *)ID;
- /**显示Base64二进制图片*/
- + (void)setImageView:(UIImageView *)imageView WithBase64String:(NSString *)avatar;
- // iOS裁剪掉图片周围透明度为0的部分
- + (UIImage *)cutAlphaZero:(UIImage *)image;
- /**push到vc 控制器
- * 1、NavigationController之前有push过就back
- * 2、NavigationController之前没有push过就push
- */
- + (void)pushVCWithBackOrPushFromNvc:(UINavigationController *)nvc toVc:(UIViewController *)vc;
- /**获取phoneId在CloudPhoneList中的索引*/
- + (NSUInteger)getIndexFromCloudPhoneListWithPhoneID:(NSInteger)phoneId;
- /*获取网络时间*/
- + (NSDate *)getInternetDate;
- + (NSString *)getInternetDateString;
- + (UIWindow *)getKeyWindow;
- //
- + (NSString *)getTaskUidStr;
- //更换图标
- + (void)lc_setAlternateIconName:(NSString*)iconName;
- + (UIViewController *)appRootViewController;
- //压缩图片对对应尺寸
- + (UIImage*)OriginImage:(UIImage *)image scaleToSize:(CGSize)size;
- // 时间戳转时间,时间戳为13位是精确到毫秒的,10位精确到秒
- + (NSString *)getDateStringWithTimeStr:(NSString* )str;
- // 文件夹大小(字节)
- + (unsigned long long)folderSizeAtPath:(NSString *)folderPath;
- //单个文件的大小(字节)
- +(unsigned long long)fileSizeAtPath:(NSString *)filePath;
- + (NSArray *)toArrayWithJsonStr:(NSString *)jsonStr;
- + (NSString *)toJsonStrWithArray:(NSArray *)arr;
- //判断图片和视频能不能保存到相册
- + (BOOL)canSaveFileToAlbumByPhoto:(BOOL)isPhotoType withName:(NSString*)nameStr;
- //判断是否为音频文件
- + (BOOL)isAudioFilewithName:(NSString*)nameStr;
- //判断是否为视频文件
- + (BOOL)isVideoFilewithName:(NSString*)nameStr;
- //判断是否为相片文件
- + (BOOL)isPhotoFilewithName:(NSString*)nameStr;
- // base64 url 编码
- + (NSString *)base64UrlEncoder:(NSString *)str;
- // base64 url 解码
- + (NSString *)base64UrlDecoder:(NSString *)str;
- //获取机型
- + (NSString *)getCurrentDeviceModel;
- //检测真机空间是否足够下载 两倍 文件长度 或者大于 1G
- + (BOOL)checkFreeDiskSpaceInBytesIsOK:(long)fileByte;
- //传输用的路径换成显示的路径
- + (NSString *)changePathToShowPathBy:(NSString*)path;
- //获取文件大小
- + (unsigned long long)getFileSize:(NSString *)filePath;
- @end
- NS_ASSUME_NONNULL_END
|