//
//  FileInfoUtils.h
//  AIIM
//
//  Created by qitewei on 2025/5/26.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@interface FileInfoUtils : NSObject
/**
 * 根据本地文件URL获取文件名（包含扩展名）
 * @param fileURL 本地文件的URL
 * @return 文件名，如果出错则返回nil
 */
+ (NSString *)getFileNameWithURL:(NSURL *)fileURL;

/**
 * 根据本地文件URL获取格式化后的文件大小字符串
 * @param fileURL 本地文件的URL
 * @param error 错误信息输出
 * @return 格式化后的文件大小字符串（如"2.4 MB"、"56.7 KB"），如果出错则返回nil
 */
+ (NSString *)getFileSizeStringWithURL:(NSURL *)fileURL error:(NSError **)error;

/**
 * 根据本地文件URL获取文件字节大小
 * @param fileURL 本地文件的URL
 * @param error 错误信息输出
 * @return 文件字节大小
 */
+ (NSInteger )getFileSizeWithURL:(NSURL *)fileURL error:(NSError **)error;

/**
 * 判断文件是否大于100MB
 * @param fileURL 本地文件的URL
 * @param error 错误信息输出
 * @return 如果文件大于100MB返回YES，否则返回NO；如果出错则返回NO并设置error
 */
+ (BOOL)isFileGreaterThan100MB:(NSURL *)fileURL error:(NSError **)error;
@end

NS_ASSUME_NONNULL_END
