基本信息
源码名称:android 导出数据到excel表格文件
源码大小:1.55M
文件格式:.rar
开发语言:Java
更新时间:2016-01-12
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
这是一个导出 excel表格的功能 从创建数据库 到导出表格到文件管理


package com.ldm.familybill;

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.os.Bundle;
import android.os.Environment;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


import com.ldm.db.DBHelper;
import com.ldm.excel.ExcelUtils;

@SuppressLint("SimpleDateFormat")
public class MainActivity extends Activity implements OnClickListener {
	private EditText mFoodEdt;
	private EditText mArticlesEdt;
	private EditText mTrafficEdt;
	private EditText mTravelEdt;
	private EditText mClothesEdt;
	private EditText mDoctorEdt;
	private EditText mRenQingEdt;
	private EditText mBabyEdt;
	private EditText mLiveEdt;
	private EditText mOtherEdt;
	private EditText mRemarkEdt;
	private Button mSaveBtn;
	private File file;
	private String[] title = {  "家庭账务记录" ,"事物支出", "日用品项", "交通话费", "旅行出行", "穿着支出", "医疗保健", "人情客往", "包包专项", "户租水电", "其他支出", "备注说明"};
	private String[] saveData;
	private DBHelper mDbHelper;
	private ArrayList<ArrayList<String>>bill2List;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		findViewsById();
		mDbHelper = new DBHelper(this);
		mDbHelper.open();
		bill2List=new ArrayList<ArrayList<String>>();
	}

	private void findViewsById() {
		mFoodEdt = (EditText) findViewById(R.id.family_bill_food_edt);
		mArticlesEdt = (EditText) findViewById(R.id.family_bill_articles_edt);
		mTrafficEdt = (EditText) findViewById(R.id.family_bill_traffic_edt);
		mTravelEdt = (EditText) findViewById(R.id.family_bill_travel_edt);
		mClothesEdt = (EditText) findViewById(R.id.family_bill_clothes_edt);
		mDoctorEdt = (EditText) findViewById(R.id.family_bill_doctor_edt);
		mRenQingEdt = (EditText) findViewById(R.id.family_bill_laiwang_edt);
		mBabyEdt = (EditText) findViewById(R.id.family_bill_baby_edt);
		mLiveEdt = (EditText) findViewById(R.id.family_bill_live_edt);
		mOtherEdt = (EditText) findViewById(R.id.family_bill_other_edt);
		mRemarkEdt = (EditText) findViewById(R.id.family_bill_remark_edt);
		mSaveBtn = (Button) findViewById(R.id.family_bill_save);
		mSaveBtn.setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		if (v.getId() == R.id.family_bill_save) {
			saveData = new String[] { new SimpleDateFormat("yyyy-MM-dd").format(new Date()), mFoodEdt.getText().toString().trim(), mArticlesEdt.getText().toString().trim(), mTrafficEdt.getText().toString().trim(), mTravelEdt.getText().toString().trim(), mClothesEdt.getText().toString().trim(), mDoctorEdt.getText().toString().trim(), mRenQingEdt.getText().toString().trim(), mBabyEdt.getText().toString().trim(), mLiveEdt.getText().toString().trim(), mOtherEdt.getText().toString().trim(), mRemarkEdt.getText().toString().trim() };
			if (canSave(saveData)) {
				
				ContentValues values = new ContentValues();
				values.put("time", new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
				values.put("food", mFoodEdt.getText().toString());
				values.put("use", mArticlesEdt.getText().toString());
				values.put("traffic", mTrafficEdt.getText().toString());
				values.put("travel", mTravelEdt.getText().toString());
				values.put("clothes", mClothesEdt.getText().toString());
				values.put("doctor", mDoctorEdt.getText().toString());
				values.put("laiwang", mRenQingEdt.getText().toString());
				values.put("baby", mBabyEdt.getText().toString());
				values.put("live", mLiveEdt.getText().toString());
				values.put("other", mOtherEdt.getText().toString());
				values.put("remark", mRemarkEdt.getText().toString());
				long insert = mDbHelper.insert("family_bill", values);
				if (insert > 0) {
					initData();
				}
			}
			else {
				Toast.makeText(this, "不发送", Toast.LENGTH_SHORT).show();
			}
		}
	}

	@SuppressLint("SimpleDateFormat")
	public void initData() {
		file = new File(getSDPath()   "/Family");
		makeDir(file);
		ExcelUtils.initExcel(file.toString()   "/客户财务.xls", title);
		ExcelUtils.writeObjListToExcel(getBillData(), getSDPath()   "/Family/客户财务.xls", this);
	}

	private ArrayList<ArrayList<String>> getBillData() {
		Cursor mCrusor = mDbHelper.exeSql("select * from family_bill");
		while (mCrusor.moveToNext()) {
			ArrayList<String> beanList=new ArrayList<String>();
			beanList.add(mCrusor.getString(1));
			beanList.add(mCrusor.getString(2));
			beanList.add(mCrusor.getString(3));
			beanList.add(mCrusor.getString(4));
			beanList.add(mCrusor.getString(5));
			beanList.add(mCrusor.getString(6));
			beanList.add(mCrusor.getString(7));
			beanList.add(mCrusor.getString(8));
			beanList.add(mCrusor.getString(9));
			beanList.add(mCrusor.getString(10));
			beanList.add(mCrusor.getString(11));
			beanList.add(mCrusor.getString(12));
			bill2List.add(beanList);
		}
		mCrusor.close();
		return bill2List;
	}

	public static void makeDir(File dir) {
		if (!dir.getParentFile().exists()) {
			makeDir(dir.getParentFile());
		}
		dir.mkdir();
	}

	public String getSDPath() {
		File sdDir = null;
		boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
		
		if (sdCardExist) {
			sdDir = Environment.getExternalStorageDirectory();
		}
		String dir = sdDir.toString();
		return dir;

	}

	private boolean canSave(String[] data) {
		boolean isOk = false;
		for (int i = 0; i < data.length; i  ) {
			if (i > 0 && i < data.length) {
				if (!TextUtils.isEmpty(data[i])) {
					isOk = true;
				}
			}
		}
		return isOk;
	}
}