iOS将表单数据保存到多个文件

Posted

技术标签:

【中文标题】iOS将表单数据保存到多个文件【英文标题】:iOS Saving form data to multiple files 【发布时间】:2012-03-27 09:35:49 【问题描述】:

我正在开发一个包含表单的应用程序。当填写表格并且用户点击“提交”按钮时,将保存一个文件,其中包含人员姓名和当前日期/时间。每次填写并提交表单时,(不幸的是)文件都会被当前文件覆盖。我的问题是,如何在每次填写时将相同的表单另存为不同的文件而不覆盖以前的文件?

【问题讨论】:

我认为我们确实需要更多信息,例如您如何尝试保存此“表单信息”。一些代码会有所帮助。 【参考方案1】:

我编写了一个算法来将一个数字附加到任何名称冲突的文件中:

- (NSString *)getDocumentPath
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString *path = [[paths objectAtIndex:0] stringByAppendingPathComponent://nameOfFile];

        //Check For Duplicate Objects
        if ([[NSFileManager defaultManager] fileExistsAtPath:path]) 
            int i = 0;
            //Duplicate Found, enter while loop to append number to it.
            while ([[NSFileManager defaultManager] fileExistsAtPath:path]) 
                //nil out string
                NSString *newString = nil;
                NSString *pathExtension = nil;
                //build string with new number
                newString = [NSString stringWithFormat:@"%@%d",[[self.itemArray objectAtIndex:self.tableView.indexPathForSelectedRow.row] stringByDeletingPathExtension],i];
                pathExtension =[[self.itemArray objectAtIndex:self.tableView.indexPathForSelectedRow.row] pathExtension];
                //query again for duplicates
                if (![[NSFileManager defaultManager] fileExistsAtPath:[[[paths objectAtIndex:0]stringByAppendingPathComponent:newString]stringByAppendingPathExtension:pathExtension]]) 
                    //success, break,write to file
                    return [[[paths objectAtIndex:0]stringByAppendingPathComponent:newString]stringByAppendingPathExtension:pathExtension];
                    break;
                
                //nope, increment int and try again
                i++;
            
        
    else return path;


【讨论】:

以上是关于iOS将表单数据保存到多个文件的主要内容,如果未能解决你的问题,请参考以下文章

如何为单个模型保存多个单独的记录

如何使用 jquery 和 Ajax 将多个文件字段保存到 django

将表单数据传递给.NET中的多个操作[重复]

如何从 Select2 Widget Yii2 将多个值保存到数据库

如何使用django自定义表单保存多个到多个字段

将 form_list 表单实例保存到数据库的正确方法?