2016-10-04 49 views
-1

我搜索如何将UICollectionView转换为CSV文件并通过Mail发送。 我有一个像照片的集合视图,我想导出表并发送它。我搜索,发现最好的办法是将其转换为CSV文件。 如果您有其他建议,请告诉我。将数据源UICollectionView转换为CSV文件

enter image description here

+1

不要转换您的UICollectionView,转换您的UICollectionView的dataSource(用于填充它的数组或字典)。 – Larme

+0

是转换为CSV是一种方式,否则,如果编辑不是一个标准,那么可以采取屏幕截图,并可以邮寄图像 – Janmenjaya

+0

@Larme我现在的CollectionView的dataSource但我是怎么做到的...我不知道在swift中找不到func将数据源转换为CSV文件。 –

回答

0

由于@Larme指出,这一转换成CSV文件无关的集合视图的可视化表示。您只需将数据源解析为CSV。 CSV代表逗号分隔值,这又意味着一种文件类型,其中表格数据使用每个数据点之间的分隔符进行编码(这通常是逗号,但可以是任何内容)以及表格中每行的新行。想想分隔符为表中的每一列之间的垂直线,而新行的行:

所以,你的CSV文本文件可能是这样的:

TITLEFORCOLUMN1, TITLEFORCOLUMN2, TITLEFORCOLUMN3 
ROWTITLEONE, 200, 300 
ROWTITLETWO, 400, 500 

等。这并不是那么简单,并且您应该遵循一些规则,特别是如果您打算让CSV文件被第三方使用。有一个官方说明,你可以看看,但你也可以通过搜索'CSV文件规范'获得很多提示。

然后您需要通过遍历数据源来创建一个字符串。首先创建指定标题的行,然后添加换行符,然后添加数据。因此,对于上面的例子,你可以这样做(假设数据被设置作为一个二维数组)

var myCSVString : String = "TITLEFORCOLUMN1, TITLEFORCOLUMN2, TITLEFORCOLUMN3\n" 
for lineItem in myDataSource { 
    myCSVString = myCSVString + lineItem[0] + ", " + lineItem[1] + ", " + lineItem[2] + "\n" 
} 

然后写入文件的字符串。

你需要自己做更多的研究,但希望这会让你走向正确的方向。