如何在iOS上将数据转换为CSV或HTML格式?
在我的应用程序iOS中,我需要将一些数据导出为CSV或HTML格式。我该怎么做?CSV- 我通常只是迭代应用程序中的数据结构,每行输出一组值,其中的值用逗号分隔如何在iOS上将数据转换为CSV或HTML格式?,html,ios,objective-c,csv,Html,Ios,Objective C,Csv,在我的应用程序iOS中,我需要将一些数据导出为CSV或HTML格式。我该怎么做?CSV- 我通常只是迭代应用程序中的数据结构,每行输出一组值,其中的值用逗号分隔 struct person { string first_name; string second_name; }; person tony = {"tony", "momo"}; person john = {"john", "smith"}; 看起来像 tony, momo john, smith CSV- 我通
struct person
{
string first_name;
string second_name;
};
person tony = {"tony", "momo"};
person john = {"john", "smith"};
看起来像
tony, momo
john, smith
CSV-
我通常只是迭代应用程序中的数据结构,每行输出一组值,其中的值用逗号分隔
struct person
{
string first_name;
string second_name;
};
person tony = {"tony", "momo"};
person john = {"john", "smith"};
看起来像
tony, momo
john, smith
附带了一个示例,说明如何将csv文件读入NSArray的NSArray中,而反向操作则非常简单
可能是这样的(警告:在浏览器中键入的代码):
附带了一个示例,说明如何将csv文件读入NSArray的NSArray中,而反向操作则非常简单
可能是这样的(警告:在浏览器中键入的代码):
一般的解决方案是使用
stringWithFormat:
格式化每一行。假设您正在将其写入文件或套接字,在这种情况下,您将在创建文件句柄时将每个字符串的数据表示形式(请参见dataUsingEncoding:
)写入文件句柄
如果要格式化很多行,可能需要使用initWithFormat:
和显式release
消息,以避免在自动释放池中堆积太多字符串对象而耗尽内存
和始终,始终,始终记住在将值传递给格式化方法之前正确转义这些值
对于编写单元测试来说,转义(以及转义)是一件非常好的事情。编写一个CSV格式的单行函数,并使用测试用例将其结果与正确的输出进行比较。如果您手头有一个CSV解析器,或者您将需要一个,或者您只是想真正确保转义是正确的,那么为解析和取消转义以及转义和格式化编写单元测试
如果您可以从包含CSV特殊字符和/或SQL特殊字符的任意组合的单个记录开始,格式化它,解析格式化字符串,最后得到一条与您开始使用的记录相同的记录,那么您知道您的代码是好的
(所有上述内容同样适用于CSV和HTML。如果可能的话,你可以考虑使用XHTML,这样你就可以使用XML验证工具和解析器,包括NSXMLParser)。
< P>一般的解决方案是使用<代码> StrutFieldFrase:<代码>来格式化每一行。假设您正在将其写入文件或套接字,在这种情况下,您将在创建文件句柄时将每个字符串的数据表示形式(请参见dataUsingEncoding:
)写入文件句柄
如果要格式化很多行,可能需要使用initWithFormat:
和显式release
消息,以避免在自动释放池中堆积太多字符串对象而耗尽内存
和始终,始终,始终记住在将值传递给格式化方法之前正确转义这些值
对于编写单元测试来说,转义(以及转义)是一件非常好的事情。编写一个CSV格式的单行函数,并使用测试用例将其结果与正确的输出进行比较。如果您手头有一个CSV解析器,或者您将需要一个,或者您只是想真正确保转义是正确的,那么为解析和取消转义以及转义和格式化编写单元测试
如果您可以从包含CSV特殊字符和/或SQL特殊字符的任意组合的单个记录开始,格式化它,解析格式化字符串,最后得到一条与您开始使用的记录相同的记录,那么您知道您的代码是好的
(所有上述内容同样适用于CSV和HTML。如果可能的话,你可以考虑使用XHTML,这样你就可以使用XML验证工具和解析器,包括NSXMLParser)。具体地说,我需要从sqlite数据库导出一些数据。您能具体说明数据的类型或至少数据的源类型吗?好的。具体地说,我需要从sqlite数据库导出一些数据。这实际上没有显示如何从记录到字符串。这实际上没有显示如何从记录到字符串。@Edwin HTML只是一种文本格式,所以构建字符串并将其写入文件。我们无法为您编写应用程序…@Edwin HTML只是一种文本格式,因此请生成字符串并将其写入文件。我们无法为您编写应用程序。。。