GSCSVSerialization 4.0.0

GSCSVSerialization 4.0.0

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2017年1月

GyazSquareGoichi Hirakawa 维护。



  • GyazSquare 提供

GSCSVSerialization 是 iOS、OS X、watchOS 和 tvOS 的 Objective-C CSV 解析器。

要求

  • Xcode 8.1 或更高版本
  • 基本 SDK:iOS 10.1 / OS X 10.12 / watchOS 3.1 / tvOS 10.0 或更高版本
  • 部署目标:iOS 8.0 / OS X 10.6 / watchOS 2.0 / tvOS 9.0 或更高版本

安装

源代码

查看源代码

$ git clone https://github.com/GyazSquare/GSCSVSerialization.git

用法

创建 CSV 对象

GSCSVSerialization可以使用以下方法通过使用符合 RFC 4180 标准的 CSV 数据创建 CSV 对象:

+ (nullable __kindof NSArray<__kindof NSArray<__kindof NSString *> *> *)CSVRecordsWithData:(NSData *)data encoding:(NSStringEncoding)encoding options:(GSCSVReadingOptions)opt error:(NSError **)error;
+ (nullable __kindof NSArray<__kindof NSArray<__kindof NSString *> *> *)CSVRecordsWithStream:(NSInputStream *)stream encoding:(NSStringEncoding)encoding options:(GSCSVReadingOptions)opt error:(NSError **)error;

例如,如果您解析以下 CSV 数据:

aaa,bbb,ccc
zzz,yyy,xxx

您可以得到如下 CSV 对象

@[
    @[@"aaa",@"bbb",@"ccc"],
    @[@"zzz",@"yyy",@"xxx"]
]

创建 CSV 数据

GSCSVSerialization可以使用以下方法通过 CSV 对象创建 CSV 数据:

+ (nullable NSData *)dataWithCSVRecords:(NSArray<NSArray<NSString *> *> *)records encoding:(NSStringEncoding)encoding options:(GSCSVWritingOptions)opt error:(NSError **)error;
+ (NSInteger)writeCSVRecords:(NSArray<NSArray<NSString *> *> *)records toStream:(NSOutputStream *)stream encoding:(NSStringEncoding)encoding options:(GSCSVWritingOptions)opt error:(NSError **)error;

一个 records 对象包含 field 字符串的两个维数组。在调用这些方法之前,您应该通过使用 isValidCSVRecords: 检查输入是否会产生有效的 CSV 数据。

许可

GSCSVSerialization 依据 MIT 许可证发布。

有关更多信息,请参阅 LICENSE 文件。