package com.cmcc.zysoft.sellmanager.controller;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream; import javax.annotation.Resource; import jxl.CellType;
import jxl.Sheet;
import jxl.Workbook;
import jxl.write.Label; import com.cmcc.zysoft.sellmanager.service.SysLBSService;
import com.cmcc.zysoft.sellmanager.util.CMPPSenderUtil; /**
*
* 类说明:
*
* @创建时间 2014-3-17 下午1:52:55
* @创建人: cmzcheng
* @邮箱:cmzcheng@gmail.com
*/
public class ExcelOperate { @Resource
private SysLBSService sysLBSService; public static void main(String[] args) { jxl.Workbook readwb = null;
try { // 构建Workbook对象, 只读Workbook对象 // 直接从本地文件创建Workbook InputStream instream = new FileInputStream("D:/sms.xls"); readwb = Workbook.getWorkbook(instream); // Sheet的下标是从0开始 // 获取第一张Sheet表 Sheet readsheet = readwb.getSheet(0); // 获取Sheet表中所包含的总行数 int rsRows = readsheet.getRows(); // 获取指定单元格的对象引用 for (int i = 0; i < rsRows; i++) {
String mobile= readsheet.getCell(0, i).getContents();
String login_url = readsheet.getCell(1, i).getContents();
String serviceName = readsheet.getCell(2, i).getContents();
sendSms(mobile, login_url, serviceName);
System.out.println(serviceName + " ," + mobile + "," + login_url);
}
//利用已经创建的Excel工作薄,创建新的可写入的Excel工作薄 jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File( "d:/短信发送列表.xls"), readwb); //读取第一张工作表 jxl.write.WritableSheet ws = wwb.getSheet(0); //获得第一个单元格对象 jxl.write.WritableCell wc = ws.getWritableCell(0, 0); //判断单元格的类型, 做出相应的转化 if (wc.getType() == CellType.LABEL) { Label l = (Label) wc; l.setString("新姓名"); } //写入Excel对象 wwb.write(); wwb.close(); } catch (Exception e) { e.printStackTrace(); } finally { readwb.close(); } } @SuppressWarnings("static-access")
public static boolean sendSms(String phone, String login_url,
String serviceName) {
boolean ls = getPhoneName(phone.substring(0, 3));
CMPPSenderUtil cmp = new CMPPSenderUtil();
try {
if (ls) {// 如果是中国移动的号码
cmp.sendMsg(phone, getContent(phone, login_url, serviceName));
} else {// 表示的是移网
cmp.sendDifferenceNetMsg(phone,
getContent(phone, login_url, serviceName));
} return true;
} catch (Exception e) {
// TODO: handle exception
return false;
} } /**
*
* @param phone
* phone
* @return String
*/
public static String getContent(String phone, String loginURL,
String qiyeTtitle) {
return "您好!" + qiyeTtitle
+ "系统已于3月15日启用域名访问啦,您单位专有网址为+ loginURL+ " ,登录帐号和密码不变,请去试试吧";
} public static boolean getPhoneName(String phoneName) {
String strings = "134,135,136,137,138,139,150,151,152,157,158,159,187,188,182,147,183,184";
boolean flg = strings.contains(phoneName);
return flg;
} }
 
写的一个读取本地excel然后发短信的代码,记录下在此

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

读取本地excel发短信的更多相关文章

  1. 用Python调用华为云API接口发短信

    [摘要] 用Python调用华为云API接口实现发短信,当然能给调用发短信接口前提条件是通过企业实名认证,而且有一个通过审核的短信签名,话不多说,showcode #!/usr/bin/python3 ...

  2. linux下利用GPRS模块发短信、打电话

    一.开发环境     内核版本:linux-3.0    开发板:FL2440(nandflash:K9F1G08 128M)    GPRS模块:SIM900   二.与发短信和拨号相关的 AT 指 ...

  3. [stm32] SIM808模块之发短信\GPS\TCP\HTTP研究

    SIM8008是四频模块,全球可用.含有TTL电平接口等接口,能够实现发短信.打电话.GPRS传输数据.GPS等功能.[正版资料请找beautifulzzzz·博客园] 一些细节: >> ...

  4. 单线程与多线程的简单示例(以Windows服务发短信为示例)

    单线程示例: public delegate void SM(); SM sm = new SM(() =>    {                    while (true)       ...

  5. Android——SMS接收发短信与运行权限

    好久没写了,最近学习Android的相关知识,包括UI组件与布局.Activity生命周期等,而这次要讲的是,Broadcast Receiver的相关知识,主要是接收发短信,SmsManager.S ...

  6. C# 聚合数据借口发短信的使用

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  7. iOS开发之调用系统打电话发短信接口以及程序内发短信

    在本篇博客开头呢,先说一下写本篇的博客的原因吧.目前在做一个小项目,要用到在本应用程序内发验证码给其他用户,怎么在应用内发送短信的具体细节想不大起来了,于是就百度了一下,发现也有关于这方面的博客,点进 ...

  8. 打电话,发短信,发邮件,app跳转

    1.打电话 - (IBAction)callPhone1:(id)sender { NSURL *url = [NSURL URLWithString:@"tel://18500441739 ...

  9. iOS中如何切换到发短信、打电话、发邮件

    我们在做APP的时候,难免会遇到需要调用短信,电话等程序的时候.如美团. 当然,这些都只是一些简单的方法就可以实现,但是时间久了也会淡忘,所以想写这边博客.一是为了再捡起来复习一下,另一个相当于留个备 ...

随机推荐

  1. scjp考试准备 - 1 - 循环控制

    判断如下代码最后的执行结果. public class Breaker{ static String o = ""; public static void main(String[ ...

  2. 双系统下利用MbrFix.exe卸载LINUX系统

    前言:  不少同学笔记本都装的有双系统,一般都是LIUNX和WINDOWS的两个系统(由于以前对电脑各种无知)装了双系统,再次,小编就不在阐述双系统地各种不便,再次就强调一下,假若要卸载LINUX的话 ...

  3. responsive menu

    http://responsive-nav.com/#instructions https://github.com/viljamis/responsive-nav.js http://tympanu ...

  4. WPF——数据绑定(二)绑定方法—绑定本地对象

    注意:本人初学WPF,文中表达或技术性问题请勿见怪,欢迎指正,谢谢 标记拓展语法:绑定到本地对象 什么是绑定到本地对象,我个人理解就是实现UI层上两个或多个控件的相互关联,一个控件的状态改变,导致另一 ...

  5. C语言编写的随机产生四则运算测试题

    题目:编写一个四则运算测试题的程序,要求每道题都要随机产生 解题思路: 1.编写测试题,且为30道,就要用到循环函数,因此想到用for()函数 2.随机产生两个数,就想到用rand()函数. 注:1. ...

  6. ListView单击单元格 产生其他控件

    以combobox为例. 假如一行里面只有一个combobox. //在类中声明一个控件数组 private ComboBox[] cmds = null; //initview中调用dao组件获得显 ...

  7. xml基础学习笔记04

    今天继续xml学习,主要是:SimpleXML快速解析文档.xml与数组相互转换 .博客中只是简单的做一个学习记录.积累.更加详细的使用方法,可以查看php手册 1.SimpleXML快速解析文档 前 ...

  8. Careercup - Google面试题 - 4847954317803520

    2014-05-08 21:33 题目链接 原题: largest number that an int variable can fit given a memory of certain size ...

  9. Ombrophobic Bovines - POJ 2391

    Description FJ's cows really hate getting wet so much that the mere thought of getting caught in the ...

  10. Posix线程编程指南(5) 杂项

    在Posix线程规范中还有几个辅助函数难以归类,暂且称其为杂项函数,主要包括pthread_self().pthread_equal()和pthread_once()三个,另外还有一个LinuxThr ...