Files
OrderScheduling/Pods/CocoaDebug/Sources/Sandbox/_SandboxerHelper.m
DDIsFriend 63ca919ed5 update
2023-08-23 09:24:40 +08:00

82 lines
2.8 KiB
Objective-C
Executable File

//
// Example
// man
//
// Created by man 11/11/2018.
// Copyright © 2020 man. All rights reserved.
//
#import "_SandboxerHelper.h"
@implementation _SandboxerHelper
+ (NSDateFormatter *)fileModificationDateFormatter {
static NSDateFormatter *_fileModificationDateFormatter;
if (!_fileModificationDateFormatter) {
_fileModificationDateFormatter = [[NSDateFormatter alloc] init];
_fileModificationDateFormatter.dateFormat = @"yyyy-MM-dd HH:mm:ss.SSS";
}
return _fileModificationDateFormatter;
}
#pragma mark - Public Methods
+ (instancetype)sharedInstance {
static id sharedInstance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedInstance = [[self alloc] init];
});
return sharedInstance;
}
+ (NSString *)fileModificationDateTextWithDate:(NSDate *)date {
if (!date) { return @""; }
return [[_SandboxerHelper fileModificationDateFormatter] stringFromDate:date];
}
//liman
//Get Folder Size
+ (NSString *)sizeOfFolder:(NSString *)folderPath {
//Calculate Folder Size with only files
// NSArray *folderContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folderPath error:nil];
//Calculate Folder Size with other sub directories in the folder
NSArray *folderContents = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:folderPath error:nil];
__block unsigned long long int folderSize = 0;
[folderContents enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:[folderPath stringByAppendingPathComponent:obj] error:nil];
folderSize += [[fileAttributes objectForKey:NSFileSize] intValue];
}];
NSString *folderSizeStr = [NSByteCountFormatter stringFromByteCount:folderSize countStyle:NSByteCountFormatterCountStyleFile];
return folderSizeStr;
}
//Get File Size
+ (NSString *)sizeOfFile:(NSString *)filePath {
NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:nil];
NSInteger fileSize = [[fileAttributes objectForKey:NSFileSize] integerValue];
NSString *fileSizeString = [NSByteCountFormatter stringFromByteCount:fileSize countStyle:NSByteCountFormatterCountStyleFile];
return fileSizeString;
}
#pragma mark - tool
+ (NSString *)generateRandomId {
UInt64 time = [[NSDate date] timeIntervalSince1970] * 1000;
return [NSString stringWithFormat:@"%llu_%@", time, [self generateRandomString]];
}
+ (NSString *)generateRandomString {
char data[10];
for (int x = 0; x < 10; ++x) {
data[x] = (char)('A' + (arc4random_uniform(26)));
}
return [[NSString alloc] initWithBytes:data length:10 encoding:NSUTF8StringEncoding];
}
@end