作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尽可能简单:我有一个非常简单的 Excel 电子表格,只有 1000 多条记录。我想将其用作 iPhone 应用程序的静态数据源。
最好的攻击计划是什么?
我心中的可能性:
1) 直接读取 XLS 作为数据源:是否有用于此目的的 Obj-C 库?
2) 将 XLS 转换为 Obj-C 具有... CSV 库的格式? XML?一些原生 CoreData 格式?
3) 将其导入 MySQLish,然后从服务器获取 XML 提要。
我需要一些帮助来弄清楚这些方法。我从未使用过 Excel。
1 很好,2 可能是我现在正在做的事情的最佳解决方案,3 我几乎知道该怎么做,但我实际上不确定 MySQL 是否有 XLS 导入(我相信 MSSQL 有) .
最佳答案
我曾经遇到过类似的问题。我最终所做的是编写一个简单的应用程序,该应用程序采用 CSV 文件并将其转换为 Plist。然后我根据应用程序中的需要使用了 Plist。此代码使用 cCSVParse 。它将使用第一行中的标题作为键名称来为每个连续行创建一个字典数组。输出是一个包含所有数据的整洁的 plist 文件。使用 [NSArray arrayWithContentsOfFile:] 将数据弹出到应用程序的内存中。
CSVParser *parser = [CSVParser new];
[parser openFileWithPath:pathAsString];
NSMutableArray *csvContent = [parser parseFile];
[parser closeFile];
if (pathAsString != nil)
{
NSArray *keyArray = [csvContent objectAtIndex:0];
NSMutableArray *plistOutputArray = [NSMutableArray array];
NSInteger i = 0;
for (NSArray *array in csvContent)
{
NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
NSInteger keyNumber = 0;
for (NSString *string in array)
{
[dictionary setObject:string forKey:[keyArray objectAtIndex:keyNumber]];
keyNumber++;
}
if (i > 0)
{
[plistOutputArray addObject:dictionary];
}
i++;
}
NSMutableString *mutableString = [NSMutableString stringWithString:pathAsString];
[mutableString replaceOccurrencesOfString:@".csv" withString:@".plist" options:nil range:NSMakeRange([mutableString length]-4, 4)];
NSURL *url = [NSURL fileURLWithPath:mutableString];
[plistOutputArray writeToURL:url atomically:YES];
我还为此构建了一个非常简单的用户界面。也许我会清理整个项目并将其发布到 Google 代码上。
关于iphone - Excel 工作表到 iPhone 数据 -- A 点到 B 点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1488948/
我是一名优秀的程序员,十分优秀!