iOS 将字符串转成txt文档

字符串转成txt文档

在使用的地方调用txt文档,我在这里使用的是录音文件转成的字符串。可以根据实际项目进行更改。

NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"testLogs2.wav"ofType:nil]; // 获取项目里面的文件
NSData *data1 = [NSData dataWithContentsOfFile:bundlePath];
NSString *base64String = [data1 base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
[self writeToFileWithTxt:base64String];// 将字符串写入沙盒 转成txt。这个地方可以是任何的字符串。

将文件写入沙盒并形成txt格式文档

- (void)writeToFileWithTxt:(NSString *)string{
    
    
    dispatch_async(dispatch_get_global_queue(0, 0), ^{
    
    
        @synchronized (self) {
    
    
            //获取沙盒路径
            NSArray *paths  = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
            //获取文件路径
            NSString *theFilePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"testLogs2.txt"];
            //创建文件管理器
            NSFileManager *fileManager = [NSFileManager defaultManager];
            //如果文件不存在 创建文件
            if(![fileManager fileExistsAtPath:theFilePath]){
    
    
                NSString *str = @"日志开始记录\n";
                [str writeToFile:theFilePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
            }
            NSLog(@"所写内容=%@",string);
            NSFileHandle *fileHandle = [NSFileHandle fileHandleForUpdatingAtPath:theFilePath];
            [fileHandle seekToEndOfFile];  //将节点跳到文件的末尾
            NSData* stringData  = [[NSString stringWithFormat:@"%@\n",string] dataUsingEncoding:NSUTF8StringEncoding];
            [fileHandle writeData:stringData]; //追加写入数据
            [fileHandle closeFile];
        }
    });
}

猜你喜欢

转载自blog.csdn.net/c1o2c3o4/article/details/117667271