zoukankan      html  css  js  c++  java
  • IOS 通过ObjectiveC读取、解析Excel

    IOS 通过Objective-C读取、解析Excel

    显示Excel我就不介绍了,大多人都知道使用UIWebView控件即可,所以直接上代码

    复制代码
    //
    //  ViewController.m
    //  PRJ_excelDemo
    //
    //  Created by wangzhipeng on 13-4-12.
    //  Copyright (c) 2013年 com.comsoft. All rights reserved.
    //
    
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @property (strong, nonatomic) IBOutlet UIWebView *pWV_main;
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        [_pWV_main setClipsToBounds:YES];
        [_pWV_main setScalesPageToFit:YES];
        //Document路径下
    //  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    //  NSString *documentsDirectory = [paths objectAtIndex:0];
        //项目路径下
        NSString *path = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"wangzhipeng.xlsx"];
        NSURL *url = [NSURL fileURLWithPath:path];
        NSURLRequest *request = [NSURLRequest requestWithURL:url];
        [_pWV_main loadRequest:request];
    }
    
    - (void)didReceiveMemoryWarning
    {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    复制代码

    问题是我目前开发的项目需求是获取.xlsx中的内容

    于是我想起来了,UIWebView能加载说明它获取到了.xlsx内容,我就想通过JS来获取UIWebView的内容

    NSString *pStr_js = @"document.documentElement.innerHTML";
    NSString *pStr_html = [_pWV_main stringByEvaluatingJavaScriptFromString:pStr_js];
        
    NSLog(@"%@", pStr_html);

    结果竟然是:

    2013-04-12 16:59:01.418 PRJ_excelDemo[4195:11303] <head></head><body></body>

    好吧,我傻了...

    我在谷歌上搜查了半天,但我似乎无法找到通过Objective-C来读取Excel文件的方法。

    我觉得唯一的可行的解决方案是Excel先转换为CSV,然后读取一个文本文件,但我不希望出现这种情况,太麻烦。

    解决方案:

    最后在 StackOverFlow的问题 从这个问题中找寻的相关解决方法,用到的 libxls 库和 DHlibxls 框架。

    主要是 DHlibxls ,个人认为是最底层是libxls库,而DHlibxls对libxls 进行了一次封装,使得在IOS中更好用了。

    以下是相关的DHlibxls 的下载,DHlibxls这个是已经把libxls 库添加到该项目中了,可以直接点击

    TestDHlibxls.xcodeproj 查看使用方法 .

    源码下载地址:http://ishare.iask.sina.com.cn/f/36736718.html

     
     
    标签: IOS
  • 相关阅读:
    【HDOJ1534】【差分约束+SPFA】
    【HDOJ3861】【Tarjan缩点+最小路径覆盖】
    【二分图最大权完美匹配】【KM算法】【转】
    学习一点汇编 INT 16H指令
    POJ2449 Remmarguts' Date 第K短路
    POJ3090 巧用欧拉函数 phi(x)
    POJ3420 递推+矩阵快速幂
    UVALive 4671 K-neighbor substrings 巧用FFT
    Tyvj 1068 巧用扩展KMP
    第四周 Leetcode 124. Binary Tree Maximum Path Sum (HARD)
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3023144.html
Copyright © 2011-2022 走看看