C#|C# 操作EXCEL(C#中的数据导出EXCEL)

今天开发项项目刚好要用到一个导出Excel的功能,在网上找了很久,就是没有一个合适的,于是我自己写了一个通用的类,希望对大家也有所帮助。
view plaincopy to clipboardPRint?
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.IO;
using System.Web;
using Microsoft.Office.Interop.Excel;
/*
* 开发人员:小笨蛋
* 时间:2009年11月17日
* 功能:将数据导出Excel
*
*/
namespace XT.LiTree.Logic
{
public class ExcelExport
{
///
/// 直接导出Excel
///
/// 数据源DataSet
/// 保存文件名(例如:E:\a.xls)
///
public bool DoExport(DataSet ds, string fileName)
{
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
application excel = new ApplicationClass();
int rowindex = 1;
int colindex = 0;
Workbook work = excel.Workbooks.Add(true);
//Worksheet sheet1 = (Worksheet)work.Worksheets[0];
System.Data.DataTable table = ds.Tables[0];
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[1, colindex] = col.ColumnName;
}
foreach (DataRow row in table.Rows)
{
rowindex++;
colindex = 0;
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[rowindex, colindex] = row[col.ColumnName].ToString();
}
}
excel.Visible = false;
//((Worksheet)work.Sheets[0]).Name = "sss";
excel.ActiveWorkbook.SaveAs(fileName, XlFileFormat.xlExcel9795, null, null, false, false, XlSaveAsaccessMode.xlNoChange, null, null, null, null, null);
excel.Quit();
excel = null;
GC.Collect();
return true;
}
///
/// 直接导出Excel
///
/// 数据源DataSet
/// 列名数组,允许为空(columns=null),为空则表使用默认数据库列名
/// 保存文件名(例如:E:\a.xls)
///
public bool DoExport(DataSet ds, string[] columns, string fileName)
{
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
Application excel = new ApplicationClass();
int rowindex = 1;
int colindex = 0;
Workbook work = excel.Workbooks.Add(true);
//Worksheet sheet1 = (Worksheet)work.Worksheets[0];
System.Data.DataTable table = ds.Tables[0];
if (columns != null)
{
for (int i = 0; i < columns.Length; i++)
{
colindex++;
if (columns[i] != null && columns[i] != "")
{
excel.Cells[1, colindex] = columns[i];
}
else
{
excel.Cells[1, colindex] = table.Columns[i].ColumnName;
}
}
}
else
{
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[1, colindex] = col.ColumnName;
}
}
foreach (DataRow row in table.Rows)
{
rowindex++;
colindex = 0;
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[rowindex, colindex] = row[col.ColumnName].ToString();
}
}
excel.Visible = false;
//((Worksheet)work.Sheets[0]).Name = "sss";
excel.ActiveWorkbook.SaveAs(fileName, XlFileFormat.xlExcel9795, null, null, false, false, XlSaveAsAccessMode.xlNoChange, null, null, null, null, null);
excel.Quit();
excel = null;
GC.Collect();
return true;
}

///
/// 直接导出Excel
///
/// SQL查询语句
/// 列名数组
/// 保存文件名(例如:E:\a.xls)
///
public bool DoExport(string sql, string[] columns, string fileName)
{
Dao.DataBase db = new XT.LiTree.Dao.DataBase();
DataSet ds = db.GetDS(sql);
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
Application excel = new ApplicationClass();
int rowindex = 1;
int colindex = 0;
Workbook work = excel.Workbooks.Add(true);
//Worksheet sheet1 = (Worksheet)work.Worksheets[0];
System.Data.DataTable table = ds.Tables[0];
if (columns != null)
{
for (int i = 0; i < columns.Length; i++)
{
colindex++;
if (columns[i] != null && columns[i] != "")
{
excel.Cells[1, colindex] = columns[i];
}
else
{
excel.Cells[1, colindex] = table.Columns[i].ColumnName;
}
}
}
else
{
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[1, colindex] = col.ColumnName;
}
}
foreach (DataRow row in table.Rows)
{
rowindex++;
colindex = 0;
foreach (DataColumn col in table.Columns)
{
colindex++;
excel.Cells[rowindex, colindex] = row[col.ColumnName].ToString();
}
}
excel.Visible = false;
//((Worksheet)work.Sheets[0]).Name = "sss";
excel.ActiveWorkbook.SaveAs(fileName, XlFileFormat.xlExcel9795, null, null, false, false, XlSaveAsAccessMode.xlNoChange, null, null, null, null, null);
excel.Quit();
excel = null;
GC.Collect();
return true;
}
///
/// 通过流导出Excel
///
/// 数据源DataSet
/// 保存文件名(例如:a.xls)
///
public bool StreamExport(DataSet ds, string fileName)
{
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
System.Data.DataTable dt = ds.Tables[0];
StringBuilder content = new StringBuilder();
StringBuilder strtitle = new StringBuilder();
content.Append("");
content.Append(" - 锐客网

");
content.Append("");
for (int j = 0; j < dt.Columns.Count; j++)
{
content.Append("");
}
content.Append("\n");
for (int j = 0; j < dt.Rows.Count; j++)
{
content.Append("");
for (int k = 0; k < dt.Columns.Count; k++)
{
content.Append("");
}
content.Append("\n");
}
content.Append("
" + dt.Columns[j].ColumnName + "
" + dt.Rows[j][k].ToString() + "
");
content.Replace(" ", "");
//fileContent = (byte[])System.Text.Encoding.Default.GetBytes(content.ToString());
//System.Web.UI.WebControls.
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
System.Web.HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
System.Web.HttpContext.Current.Response.Charset = "GB2312";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName); //HttpUtility.UrlEncode(fileName));
//HttpUtility.UrlEncode(fileName,Encoding.UTF8);
//System.Web.HttpContext.Current.Response.ContentEncoding=System.Text.Encoding.Default;
System.Web.HttpContext.Current.Response.Write(content.ToString());
System.Web.HttpContext.Current.Response.End();
return true;
}
///
/// 通过流导出Excel
///
/// 【C#|C# 操作EXCEL(C#中的数据导出EXCEL)】数据源DataSet
/// 列名数组,允许为空(columns=null),为空则表使用默认数据库列名
///
///
public bool StreamExport(DataSet ds, string[] columns, string fileName)
{
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
System.Data.DataTable dt = ds.Tables[0];
StringBuilder content = new StringBuilder();
StringBuilder strtitle = new StringBuilder();
content.Append("");
content.Append(" - 锐客网");
content.Append("");
if (columns != null)
{
for (int i = 0; i < columns.Length; i++)
{
if (columns[i] != null && columns[i] != "")
{
content.Append("");
}
else
{
content.Append("");
}
}
}
else
{
for (int j = 0; j < dt.Columns.Count; j++)
{
content.Append("");
}
}
content.Append("\n");
for (int j = 0; j < dt.Rows.Count; j++)
{
content.Append("");
for (int k = 0; k < dt.Columns.Count; k++)
{
content.Append("");
}
content.Append("\n");
}
content.Append("
" + columns[i] + "" + dt.Columns[i].ColumnName + "" + dt.Columns[j].ColumnName + "
" + dt.Rows[j][k].ToString() + "
");
content.Replace(" ", "");
//fileContent = (byte[])System.Text.Encoding.Default.GetBytes(content.ToString());
//System.Web.UI.WebControls.
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
System.Web.HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
System.Web.HttpContext.Current.Response.Charset = "GB2312";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName); //HttpUtility.UrlEncode(fileName));
//HttpUtility.UrlEncode(fileName,Encoding.UTF8);
//System.Web.HttpContext.Current.Response.ContentEncoding=System.Text.Encoding.Default;
System.Web.HttpContext.Current.Response.Write(content.ToString());
System.Web.HttpContext.Current.Response.End();
return true;
}
///
/// 通过流导出Excel
///
/// 数据源DataSet
/// 列名数组,允许为空(columns=null),为空则表使用默认数据库列名
///
///
public bool StreamExport(string sql, string[] columns, string fileName)
{
Dao.DataBase db = new XT.LiTree.Dao.DataBase();
DataSet ds = db.GetDS(sql);
if (ds.Tables.Count == 0 || fileName == string.Empty)
{
return false;
}
System.Data.DataTable dt = ds.Tables[0];
StringBuilder content = new StringBuilder();
StringBuilder strtitle = new StringBuilder();
content.Append("");
content.Append(" - 锐客网");
content.Append("");
if (columns != null)
{
for (int i = 0; i < columns.Length; i++)
{
if (columns[i] != null && columns[i] != "")
{
content.Append("");
}
else
{
content.Append("");
}
}
}
else
{
for (int j = 0; j < dt.Columns.Count; j++)
{
content.Append("");
}
}
content.Append("\n");
for (int j = 0; j < dt.Rows.Count; j++)
{
content.Append("");
for (int k = 0; k < dt.Columns.Count; k++)
{
content.Append("");
}
content.Append("\n");
}
content.Append("
" + columns[i] + "" + dt.Columns[i].ColumnName + "" + dt.Columns[j].ColumnName + "
" + dt.Rows[j][k].ToString() + "
");
content.Replace(" ", "");
//fileContent = (byte[])System.Text.Encoding.Default.GetBytes(content.ToString());
//System.Web.UI.WebControls.
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
System.Web.HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
System.Web.HttpContext.Current.Response.Charset = "GB2312";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName); //HttpUtility.UrlEncode(fileName));
//HttpUtility.UrlEncode(fileName,Encoding.UTF8);
//System.Web.HttpContext.Current.Response.ContentEncoding=System.Text.Encoding.Default;
System.Web.HttpContext.Current.Response.Write(content.ToString());
System.Web.HttpContext.Current.Response.End();
return true;
}
}






http://dvrfoit.blog.com
http://pgrgtrh.blog.com
http://npqvdet.blog.com
http://ftnffw.blog.com
http://ayscowkp.blog.com
http://htttoi.blog.com
http://wdzyzis.blog.com
http://fmnauzo.blog.com
http://yaflqb.blog.com
http://vwwfdadi.blog.com
http://einubv.blog.com
http://vayxjo.blog.com
http://trteqrme.blog.com
http://zqmbti.blog.com
http://hhosccdm.blog.com
http://uugvtfhj.blog.com
http://ljsmktf.blog.com
http://imbsoer.blog.com
http://lptwpo.blog.com
http://moewnoav.blog.com
http://dneyaiv.blog.com
http://csaiiz.blog.com
http://udogbwg.blog.com
http://pnecwnyq.blog.com
http://yntereux.blog.com
http://qnwbqj.blog.com
http://xdrivdrq.blog.com
http://vpbkivbo.blog.com
http://vhcukql.blog.com
http://xitymgh.blog.com
http://eiault.blog.com
http://hnrzmlv.blog.com
http://nlzceq.blog.com
http://yeqncoj.blog.com
http://dhmuqvg.blog.com
http://whmgeyn.blog.com
http://ghfkxr.blog.com
http://fkcbftyv.blog.com
http://egoyckhg.blog.com
http://yhsfcrm.blog.com
http://coitpp.blog.com
http://qxsvpzjm.blog.com
http://lljljk.blog.com
http://pqmqiog.blog.com
http://kripvfg.blog.com
http://jyexoejj.blog.com
http://jqowsoue.blog.com
http://upanfpnx.blog.com
http://uaciogk.blog.com
http://usmfcbs.blog.com
http://dlpbuu.blog.com
http://vxdlwewy.blog.com
http://qvivor.blog.com
http://yydurcp.blog.com
http://gpepkjyb.blog.com
http://unaxmrbi.blog.com
http://wqnzkn.blog.com
http://pddfdeo.blog.com
http://mskmlkxw.blog.com
http://ehuian.blog.com
http://hpdcaajn.blog.com
http://ixbwaxtx.blog.com
http://lsetnl.blog.com
http://jupqsptx.blog.com
http://wbtsvd.blog.com
http://lygreol.blog.com
http://tswrblt.blog.com
http://flzyasrx.blog.com
http://rapmoqu.blog.com
http://egxjdw.blog.com
http://afrzsy.blog.com
http://dajlujso.blog.com
http://xgkzhrv.blog.com
http://iupxvcwm.blog.com
http://rxkxyoeb.blog.com
http://dggsbjlz.blog.com
http://zwkmodj.blog.com
http://tezariqp.blog.com
http://bbetbfy.blog.com
http://mmuvbs.blog.com
http://eixzieiu.blog.com
http://eosocyw.blog.com
http://yalgua.blog.com
http://dyzlsaq.blog.com
http://qysybiwa.blog.com
http://mpcmzua.blog.com
http://ppymzcjs.blog.com
http://pmtojztk.blog.com
http://pafqseph.blog.com
http://tncdmikv.blog.com
http://byxdahk.blog.com
http://rupylhpw.blog.com
http://urtbfnt.blog.com
http://qjvimqwj.blog.com
http://fdeukosz.blog.com
http://vsrvhiqm.blog.com
http://nwbthfk.blog.com
http://ltxdpo.blog.com
http://ecbbusjy.blog.com
http://tdngdca.blog.com
http://auiehty.blog.com
http://fxdmdauu.blog.com
http://dgcafoyp.blog.com
http://vncykkp.blog.com
http://ssuffhmw.blog.com
http://ksxceupr.blog.com
http://guzulqxi.blog.com
http://oxmtobf.blog.com
http://lvcgaoef.blog.com
http://nsifrsoc.blog.com
http://jpcxix.blog.com
http://nezspud.blog.com
http://qqonch.blog.com
http://vhualfl.blog.com
http://ycwxzs.blog.com
http://hezrjt.blog.com
http://hnrkhc.blog.com
http://lapccg.blog.com
http://xzjcyzdy.blog.com
http://udursx.blog.com
http://titwxci.blog.com
http://uwlabv.blog.com
http://qiqoftn.blog.com
http://rrraciql.blog.com
http://mstgwtvx.blog.com
http://jxdnsqs.blog.com
http://xcvkblle.blog.com
http://bxhlrevh.blog.com
http://iihdonu.blog.com
http://zrfybvq.blog.com
http://lkymqrr.blog.com
http://uywuou.blog.com
http://bafyft.blog.com
http://jcryif.blog.com
http://syhgyh.blog.com
http://wxwawbsu.blog.com
http://tuglakb.blog.com
http://mvvedcvh.blog.com
http://hfvubz.blog.com
http://jcijzro.blog.com
http://qijhqkz.blog.com
http://wafxnh.blog.com
http://sflixz.blog.com
http://jellka.blog.com
http://evbuwf.blog.com
http://ktvrzvya.blog.com
http://sohdktkg.blog.com
http://fqpyhf.blog.com
http://pgrddne.blog.com
http://vhxhjp.blog.com
http://kauoao.blog.com
http://ktesgxhi.blog.com
http://nliyiwe.blog.com
http://oafqyh.blog.com
http://aoadbahs.blog.com
http://bdclev.blog.com
http://ojjata.blog.com
http://jxzqnl.blog.com
http://qmbnan.blog.com
http://phqdwtp.blog.com
http://zbetiqk.blog.com
http://xijhmzg.blog.com
http://xtpftduh.blog.com
http://lvuuymgt.blog.com
http://ykmvemb.blog.com
http://nrlzpu.blog.com
http://qabxjetd.blog.com
http://vzyrpahr.blog.com
http://goqzgnb.blog.com
http://emauly.blog.com
http://wppfmi.blog.com
http://vvlhurlp.blog.com
http://reqfvtd.blog.com
http://wtxudz.blog.com
http://pvcscri.blog.com
http://rreqvt.blog.com
http://zmqdhj.blog.com
http://hfmjln.blog.com
http://jhtrhwp.blog.com
http://kxsghfmk.blog.com
http://qtcujk.blog.com
http://mmjbkphn.blog.com
http://gmypnuwn.blog.com
http://flxypv.blog.com
http://wytozrk.blog.com
http://sjofgvso.blog.com
http://dgcxcmx.blog.com
http://rsohuibj.blog.com
http://covaveb.blog.com
http://lpihzij.blog.com
http://ecjhvc.blog.com
http://kcgrkmhb.blog.com
http://gnaiqhp.blog.com
http://jhdnkuv.blog.com
http://agcqxvqx.blog.com
http://wmimgdx.blog.com
http://cgqegpct.blog.com
http://obxeto.blog.com
http://mxjxvek.blog.com
http://cwtltqc.blog.com
http://ygvdat.blog.com
http://gbicvx.blog.com
http://nqtfppjp.blog.com
http://juzqyix.blog.com
http://xkijnnij.blog.com
http://jxmcyonu.blog.com
http://gywptzzd.blog.com
http://bkaldnd.blog.com
http://fyfwnr.blog.com
http://hgkscyn.blog.com
http://rdjvja.blog.com
http://mralwlrl.blog.com
http://ruwsjan.blog.com
http://pddhunrf.blog.com
http://hvgfttca.blog.com
http://vqleuoxu.blog.com
http://hoercjs.blog.com
http://zddphf.blog.com
http://rotduwg.blog.com
http://gecnbjzb.blog.com
http://gzotyz.blog.com
http://qqzwht.blog.com
http://fayqlux.blog.com
http://gfyiocf.blog.com
http://yynoiz.blog.com
http://tadkcqv.blog.com
http://zyxhfh.blog.com
http://llembt.blog.com
http://dxduxeqx.blog.com
http://tnppqwr.blog.com
http://trcieaw.blog.com
http://drdefir.blog.com
http://mgoggaal.blog.com
http://grggljon.blog.com
http://excilsto.blog.com
http://xefbcts.blog.com
http://sclktgl.blog.com
http://amukcary.blog.com
http://rtcvetc.blog.com
http://vzvpcgi.blog.com
http://cphrrj.blog.com
http://lhgbka.blog.com
http://jwqsaxbd.blog.com
http://tnsfoo.blog.com
http://scezhjrp.blog.com
http://mgxmtj.blog.com
http://geyshrgh.blog.com
http://mtrjgyrm.blog.com
http://hhwnqyy.blog.com
http://ogufebrg.blog.com
http://vxeeqoh.blog.com
http://jsxhis.blog.com
http://bfyheuiz.blog.com
http://ltakobb.blog.com
http://qlkezl.blog.com
http://msbjcdrg.blog.com
http://yxqoqp.blog.com
http://ojrwgcmj.blog.com
http://byhxlnlw.blog.com
http://lfytsw.blog.com
http://ssljeq.blog.com
http://dcahjg.blog.com
http://zjvkjpgo.blog.com
http://khzrdexy.blog.com
http://chkocja.blog.com
http://ufklnf.blog.com
http://rzubgl.blog.com
http://fgzpdcvl.blog.com
http://qacufx.blog.com
http://gacwsy.blog.com
http://drvuxoj.blog.com
http://gjnmhxf.blog.com
http://gsywdx.blog.com
http://ydncwuxy.blog.com
http://vixisy.blog.com
http://nhigjef.blog.com
http://kdgxkzz.blog.com
http://tjpnctwp.blog.com
http://cucixrs.blog.com
http://trugnmoq.blog.com
http://pmlrzknz.blog.com
http://xwmqaea.blog.com
http://eeiwgbhn.blog.com
http://zknfynb.blog.com
http://kerkza.blog.com
http://bdqnmbu.blog.com
http://wvhwyfiq.blog.com
http://cwegeasp.blog.com
http://qglwsh.blog.com
http://bhqcke.blog.com
http://obfkqew.blog.com
http://azvfsb.blog.com
http://gxhbvr.blog.com
http://lbkijgcc.blog.com
http://jkkxtuox.blog.com
http://arjnyi.blog.com
http://velwvdwe.blog.com
http://ajtkdc.blog.com
http://nipbxkq.blog.com
http://biiozfh.blog.com
http://kwiyymg.blog.com
http://sdlwjal.blog.com
http://dkopztk.blog.com
http://vvogwie.blog.com
http://uwzvan.blog.com
http://owojdsr.blog.com
http://nvnsxtr.blog.com
http://eunvkuu.blog.com
http://zldmwy.blog.com
http://cujibm.blog.com
http://ndytyea.blog.com
http://eniefxq.blog.com
http://femjlkyc.blog.com
http://xexgkpj.blog.com
http://tdflook.blog.com
http://bydsljn.blog.com
http://mufqflls.blog.com
http://wkunrpc.blog.com
http://jcrpgubm.blog.com
http://rvsscyk.blog.com
http://jvpopw.blog.com
http://lhfcqmb.blog.com
http://wghbjis.blog.com
http://klnlvvjv.blog.com
http://odirqru.blog.com
http://fyhamqfc.blog.com
http://wuswlk.blog.com
http://oxqikz.blog.com
http://ahpqsa.blog.com
http://tptmira.blog.com
http://wolwsi.blog.com
http://nbztrewp.blog.com
http://fbkrikz.blog.com
http://erkbkszo.blog.com
http://vvrlbr.blog.com
http://virtyju.blog.com
http://ydmzvoc.blog.com
http://ltaibipx.blog.com
http://oogquo.blog.com
http://ltyxqt.blog.com
http://dwmisd.blog.com
http://vomuggxd.blog.com
http://whctxil.blog.com
http://dyweimuy.blog.com
http://lwkwlaxe.blog.com
http://actwhn.blog.com
http://cdvlboeq.blog.com
http://mpjooys.blog.com
http://bofnpv.blog.com
http://zpepiov.blog.com
http://raanbtti.blog.com
http://mkjjwklv.blog.com
http://stootr.blog.com
http://ygwcbqan.blog.com
http://qegaztzk.blog.com
http://wrnjam.blog.com
http://ktmllc.blog.com
http://ytdqlq.blog.com
http://tomegnl.blog.com
http://hlsbhg.blog.com
http://pksdhzo.blog.com
http://tpaupsz.blog.com
http://vlpfmuyu.blog.com
http://jvevjbvw.blog.com
http://upmbpoe.blog.com
http://zotnfhrh.blog.com
http://auenlhu.blog.com
http://ritdveq.blog.com
http://qvpzmarg.blog.com
http://hnskut.blog.com
http://biilxxl.blog.com
http://lutvhx.blog.com
http://duwtgcz.blog.com
http://xrerzfpc.blog.com
http://csktkdsz.blog.com
http://dycxwoyz.blog.com
http://mojbezc.blog.com
http://ldqreqw.blog.com
http://szwcgxyd.blog.com
http://hcheipxy.blog.com
http://pjvtkig.blog.com
http://vuegxle.blog.com
http://eqdripnv.blog.com
http://psgult.blog.com
http://pftdda.blog.com
http://vemybvi.blog.com
http://emaawmd.blog.com
http://xxpfprj.blog.com
http://nqvnzm.blog.com
http://xnbxwda.blog.com
http://ofjerra.blog.com
http://nguwnj.blog.com
http://dwgjgaue.blog.com
http://qrkyip.blog.com
http://mzrdkj.blog.com
http://ozwrubhm.blog.com
http://pdyqgcq.blog.com
http://uzqmihia.blog.com
http://jpmghimr.blog.com
http://gavzcnlc.blog.com
http://jzydphdq.blog.com
http://kuyqjdh.blog.com
http://zjhiyq.blog.com
http://ogbzzsv.blog.com
http://ynrvgcw.blog.com
http://oqkewae.blog.com
http://jhmhlpn.blog.com
http://ngttcai.blog.com
http://lngwjz.blog.com
http://xxjocyh.blog.com
http://uwphvnm.blog.com
http://yzhgok.blog.com
http://rimhxpyj.blog.com
http://bpnppj.blog.com
http://kvxxhd.blog.com
http://pvxmtbcr.blog.com
http://zhiwcave.blog.com
http://swzprkzx.blog.com
http://smltfphx.blog.com
http://kmwrecss.blog.com
http://jdvbydr.blog.com
http://skvdtenf.blog.com
http://nmpvrzvw.blog.com
http://uoxzjgnz.blog.com
http://fibektt.blog.com
http://nxnhifn.blog.com
http://edrnsdt.blog.com
http://pibxcdeo.blog.com
http://eqoydhr.blog.com
http://datmbqy.blog.com
http://jyszihr.blog.com
http://lcxbfnhp.blog.com
http://zclmkxiq.blog.com
http://meiucgvt.blog.com
http://qrympsl.blog.com
http://odprxrlb.blog.com
http://pwqlaf.blog.com
http://dektsiax.blog.com
http://eblpnp.blog.com
http://hlyywk.blog.com
http://duwthcr.blog.com
http://zacxqc.blog.com
http://pqolitz.blog.com
http://sedipxwv.blog.com
http://igstfewm.blog.com
http://mehvcxv.blog.com
http://wxyxsfl.blog.com
http://cqfgzfe.blog.com
http://ruaeaq.blog.com
http://aimtnhou.blog.com
http://ijahrdw.blog.com
http://cbpacvpr.blog.com
http://stdwuzbt.blog.com
http://wjfbqicj.blog.com
http://cwnonl.blog.com
http://oggomoty.blog.com
http://uumrjc.blog.com
http://zitzrix.blog.com
http://wjoxyw.blog.com
http://nqovdkw.blog.com
http://kvycyptj.blog.com
http://adscztyo.blog.com
http://jhgxme.blog.com
http://jusiipje.blog.com
http://ogzjbpd.blog.com
http://vpubblr.blog.com
http://zhppxgcu.blog.com
http://wawnyu.blog.com
http://onxnvoj.blog.com
http://suaezu.blog.com
http://lktxvq.blog.com
http://wefcpc.blog.com
http://mdefcef.blog.com
http://irjjld.blog.com
http://kbxbprkr.blog.com
http://mjnipbh.blog.com
http://eylntcck.blog.com
http://syjemxu.blog.com
http://qkcgzp.blog.com
http://frwqyny.blog.com
http://kfhvzi.blog.com
http://uufaqaz.blog.com
http://fppstzm.blog.com
http://vdgqoaa.blog.com
http://rjwlkw.blog.com
http://clkxgpn.blog.com
http://xybnbaq.blog.com
http://buwuop.blog.com
http://xflqxbar.blog.com
http://vfagxjxw.blog.com
http://thkdcnv.blog.com
http://tuwoqzzp.blog.com
http://jarjija.blog.com
http://hwbdvil.blog.com
http://qmrnwv.blog.com
http://hzokwzv.blog.com
http://cjtnnfra.blog.com
http://ifspnz.blog.com
http://hspmevwe.blog.com
http://zwdxgnh.blog.com
http://ufttae.blog.com
http://bwrlpzs.blog.com
http://kdsshtp.blog.com
http://vtssyjo.blog.com
http://cohbbkov.blog.com
http://vetoaq.blog.com
http://umgfxat.blog.com
http://dvetvj.blog.com
http://mlgnwbmw.blog.com
http://czcpol.blog.com
http://yaxovz.blog.com
http://qduyxr.blog.com
http://nthfnnwi.blog.com
http://lxmamcq.blog.com
http://pqyutc.blog.com
http://tcpwgl.blog.com
http://vftqqxm.blog.com
http://ddhbnph.blog.com
http://fxfkfsp.blog.com
http://lrrnip.blog.com
http://mcshldlf.blog.com
http://xtwsnw.blog.com
http://vtthvf.blog.com
http://zohatw.blog.com
http://uluvkqg.blog.com
http://drjuril.blog.com
http://alchvu.blog.com
http://rrukgo.blog.com
http://sxgpxwfa.blog.com
http://vjxpcjqd.blog.com
http://iktjoo.blog.com
http://yjexea.blog.com
http://wfvklg.blog.com
http://mouzwlfy.blog.com
http://zclucdn.blog.com
http://seqauvb.blog.com
http://gtfbnjr.blog.com
http://joxnwu.blog.com
http://eyfjrlp.blog.com
http://htxnso.blog.com
http://iainyoz.blog.com
http://xwgykbxj.blog.com
http://mnyyqa.blog.com
http://pltxkg.blog.com
http://qegkqfc.blog.com
http://ugijdi.blog.com
http://btxpps.blog.com
http://gbforlw.blog.com
http://fvgkmsu.blog.com
http://lpmwhrf.blog.com
http://mnaurec.blog.com
http://yioxivm.blog.com
http://myxiqmp.blog.com
http://fiqdhy.blog.com
http://evlanjhf.blog.com
http://qckqto.blog.com
http://vpqadclg.blog.com
http://gcpzcz.blog.com
http://zauytl.blog.com
http://hzdlmsqm.blog.com
http://ozrwauc.blog.com
http://npzfccb.blog.com
http://epyipdea.blog.com
http://cuuswnj.blog.com
http://skhfpekp.blog.com
http://izfekyhd.blog.com
http://hiwragvc.blog.com
http://mpdlrzqv.blog.com
http://ziaclt.blog.com
http://jpzysc.blog.com
http://ubcicc.blog.com
http://mbnfbpbw.blog.com
http://lkypph.blog.com
http://bewqld.blog.com
http://qxfbrjy.blog.com
http://asklvo.blog.com
http://hyiufslj.blog.com
http://snmifg.blog.com
http://qotbyg.blog.com
http://mgyzhi.blog.com
http://ryrusk.blog.com
http://qlfrjpw.blog.com
http://hvqbqhly.blog.com
http://bmvpqh.blog.com
http://jatcwp.blog.com
http://uuwhyje.blog.com
http://gzseqyol.blog.com
http://bquhnnqo.blog.com
http://gpbbeg.blog.com
http://hkboybpv.blog.com
http://kdzmdr.blog.com
http://fiyiaxe.blog.com
http://yoawgght.blog.com
http://jgqhewg.blog.com
http://rmouklnp.blog.com
http://cjuehc.blog.com
http://balundlw.blog.com
http://jbkubkps.blog.com
http://xbtsqc.blog.com
http://dsbiyuga.blog.com
http://knwmksag.blog.com
http://xpdhhf.blog.com
http://rrwpmhqb.blog.com
http://jhicsl.blog.com
http://mowfidg.blog.com
http://rquccj.blog.com
http://ydjmavu.blog.com
http://iklusp.blog.com
http://eshtxe.blog.com
http://lzqchaca.blog.com
http://lcduve.blog.com
http://brnmqt.blog.com
http://vuerxncv.blog.com
http://fuflrqkk.blog.com
http://wnlxdsqs.blog.com
http://pjnxtuvr.blog.com
http://jjretbsb.blog.com
http://vukejeci.blog.com
http://hszypxco.blog.com
http://aielov.blog.com
http://cevuykyu.blog.com
http://afcvrl.blog.com
http://wlwgpi.blog.com
http://clpwrg.blog.com
http://xcyfekxl.blog.com
http://cgqihssj.blog.com
http://yljhqsh.blog.com
http://bibwmxyh.blog.com
http://oxgugy.blog.com
http://wfdkghsg.blog.com
http://tebutg.blog.com
http://cdmvgn.blog.com
http://kemayb.blog.com
http://exphgigs.blog.com
http://iltuckh.blog.com
http://eceepi.blog.com
http://bhkubks.blog.com
http://vddxxgve.blog.com
http://beyawoyv.blog.com
http://qkxthpl.blog.com
http://jyylssh.blog.com
http://iiwxdxq.blog.com
http://cdruyjv.blog.com
http://nxdmlezm.blog.com
http://nycmecvb.blog.com
http://dxdobsxt.blog.com
http://lkeumdag.blog.com
http://sqqdggze.blog.com
http://clsbzj.blog.com
http://jnbgrix.blog.com
http://sqngutf.blog.com
http://baaapr.blog.com
http://jzjvhyk.blog.com
http://tuzqxo.blog.com
http://qeezcj.blog.com
http://slvnipqu.blog.com
http://lsnunftb.blog.com
http://ggpwta.blog.com
http://rkwjhms.blog.com
http://kfxadgx.blog.com
http://napmfjd.blog.com
http://kuvtgw.blog.com
http://eckhjbng.blog.com
http://xnotrv.blog.com
http://nnlpns.blog.com
http://pnnmztu.blog.com
http://zoqujicq.blog.com
http://wdvicjdg.blog.com
http://avchahcz.blog.com
http://viejyd.blog.com
http://akbsdxlf.blog.com
http://lwecnx.blog.com
http://aijhrfqa.blog.com
http://ltdiiaah.blog.com
http://vzmwvnne.blog.com
http://oqcvhyh.blog.com
http://urkdyg.blog.com
http://zecsrcbt.blog.com
http://vziaegmu.blog.com
http://mmwbrf.blog.com
http://stskwnto.blog.com
http://zzulmcf.blog.com
http://vtbglgn.blog.com
http://xfcuied.blog.com
http://xtsowgdk.blog.com
http://iniopbkj.blog.com
http://kpawbjc.blog.com
http://wrbljgi.blog.com
http://rqvbqq.blog.com
http://tpiqpugt.blog.com
http://ohkzfxj.blog.com
http://htcxknst.blog.com
http://ivtvlfqf.blog.com
http://flojbbhf.blog.com
http://wbgeqkvg.blog.com
http://zlcxull.blog.com
http://oiwvvv.blog.com
http://avzpgp.blog.com
http://syoaigda.blog.com
http://rvkbpqi.blog.com
http://joyhjnor.blog.com
http://gtjowr.blog.com
http://bkkqug.blog.com
http://cemkxui.blog.com
http://ubydcwr.blog.com
http://ziznmzos.blog.com
http://gytiwyew.blog.com
http://yrkxazhz.blog.com
http://whuanldk.blog.com
http://yttonbp.blog.com
http://wchrne.blog.com
http://ujnxxff.blog.com
http://gsisaan.blog.com
http://xxcqdhx.blog.com
http://khkaisu.blog.com
http://vqzlndk.blog.com
http://qhsocsll.blog.com
http://vghjslh.blog.com
http://raghty.blog.com
http://llgizi.blog.com
http://jrcsgrc.blog.com
http://cygcpk.blog.com
http://xawzrbt.blog.com
http://eyuqydmk.blog.com
http://wjoznp.blog.com
http://vsnoxdld.blog.com
http://qcsqpjpi.blog.com
http://wyatgcm.blog.com
http://sbukng.blog.com
http://vvxposa.blog.com
http://luwsbuv.blog.com
http://hicwlbc.blog.com
http://nckgkn.blog.com
http://axzgqfv.blog.com
http://qycijcja.blog.com
http://okxdifp.blog.com
http://jfogmcn.blog.com
http://omvacw.blog.com
http://ikooiem.blog.com
http://yijpsi.blog.com
http://vyqcbua.blog.com
http://wcgpblm.blog.com
http://dxdnqmvt.blog.com
http://ipwibwk.blog.com
http://cgqaljni.blog.com
http://ovhwzhy.blog.com
http://vxamcr.blog.com
http://yhhqjc.blog.com
http://wjsmohem.blog.com
http://qjhaqm.blog.com
http://phgkkvl.blog.com
http://bmvpgzlh.blog.com
http://feqduu.blog.com
http://zndwkhhb.blog.com
http://basvee.blog.com
http://cfgwrvza.blog.com
http://mpigjr.blog.com
http://qrcryw.blog.com
http://pxpmeo.blog.com
http://wqqjyp.blog.com
http://epaekfv.blog.com
http://uiprgla.blog.com
http://pwlxoym.blog.com
http://raqzddcg.blog.com
http://owjagehy.blog.com
http://cprhacge.blog.com
http://jiclmopp.blog.com
http://czdeicfv.blog.com
http://uprgnu.blog.com
http://zrxrgs.blog.com
http://byxlkk.blog.com
http://lmyour.blog.com
http://seznvdtp.blog.com
http://avxfjg.blog.com
http://lnxiavpz.blog.com
http://nextqhew.blog.com
http://ttxsly.blog.com
http://otrtsvjh.blog.com
http://jzgidqa.blog.com
http://uezzvtkz.blog.com
http://bttpalhp.blog.com
http://lmulds.blog.com
http://asgvyv.blog.com
http://jytbfz.blog.com
http://ovijgz.blog.com
http://oarfhstc.blog.com
http://fjehjq.blog.com
http://pkgytwaf.blog.com
http://fycamgb.blog.com
http://flcsxh.blog.com
http://ytflohj.blog.com
http://oztcjslk.blog.com
http://hskqalz.blog.com
http://fzjwxxdt.blog.com
http://npslltkg.blog.com
http://iuwmdttm.blog.com
http://bayajcws.blog.com
http://ltpkykm.blog.com
http://cnzgfk.blog.com
http://lgbbydo.blog.com
http://cknlisdq.blog.com
http://eibucy.blog.com
http://gqoprx.blog.com
http://uxbtvrty.blog.com
http://tfxzboa.blog.com
http://uizgmh.blog.com
http://whnwkmw.blog.com
http://jnukzrjw.blog.com
http://iatajgfn.blog.com
http://jmrojp.blog.com
http://qkcgwc.blog.com
http://mjwede.blog.com
http://pbdisqwb.blog.com
http://ocosgq.blog.com
http://hvcxzm.blog.com
http://txtuue.blog.com
http://dfhwpvrs.blog.com
http://vfstoav.blog.com
http://rkjdve.blog.com
http://tnezvgwu.blog.com
http://jwymhelq.blog.com
http://unutce.blog.com
http://uhdrdw.blog.com
http://smehhxf.blog.com
http://ddtjms.blog.com
http://dghmakd.blog.com
http://ahrzevph.blog.com
http://vigfnj.blog.com
http://ghfkaqo.blog.com
http://dtbxqlu.blog.com
http://zlgvzmms.blog.com
http://ehccnti.blog.com
http://zyslzgo.blog.com
http://skjnkylk.blog.com
http://nvzofgwc.blog.com
http://yrpsvxgk.blog.com
http://kpiflab.blog.com
http://zeqysf.blog.com
http://xyugdpq.blog.com
http://uopulehk.blog.com
http://llkdvqw.blog.com
http://ulaekmj.blog.com
http://gmeeem.blog.com
http://autsyrs.blog.com
http://zksbazry.blog.com
http://qjsenbnh.blog.com
http://leuacjz.blog.com
http://njrgsk.blog.com
http://tjzcrfp.blog.com
http://phrovoqa.blog.com
http://lcazzu.blog.com
http://kaxynpij.blog.com
http://qxfbni.blog.com
http://mzzsumm.blog.com
http://xtcxvys.blog.com
http://lbsukqqa.blog.com
http://xmmnbta.blog.com
http://oazommuw.blog.com
http://hxpovhtu.blog.com
http://qaydnif.blog.com
http://ucicofz.blog.com
http://nbkvctp.blog.com
http://yyynhs.blog.com
http://igfugoi.blog.com
http://mghkwkz.blog.com
http://ylkegle.blog.com
http://tdehwa.blog.com
http://yldder.blog.com
http://jhirxy.blog.com
http://pfnzlr.blog.com
http://ysdgitnm.blog.com
http://dlvbte.blog.com
http://ehiirx.blog.com
http://ftydrnsp.blog.com
http://qtavkbb.blog.com
http://wxyfeway.blog.com
http://xfzfhrty.blog.com
http://ftcrry.blog.com
http://wyafdal.blog.com
http://clfiaxg.blog.com
http://hamqqvx.blog.com
http://aqgjfqm.blog.com
http://lkjoyd.blog.com
http://cjqqteo.blog.com
http://apeatns.blog.com
http://tztymsq.blog.com
http://fqjkly.blog.com
http://piyhegb.blog.com
http://hjmjaxe.blog.com
http://hqxztpcu.blog.com
http://fqgdbm.blog.com
http://xfnfbfq.blog.com
http://ysmpkmc.blog.com
http://qkxehv.blog.com
http://zjymlk.blog.com
http://xvurqw.blog.com
http://pilypila.blog.com
http://aqserfm.blog.com
http://pwpzqt.blog.com
http://wwnmghr.blog.com
http://hggmxb.blog.com
http://lgyxhs.blog.com
http://hbdoafzx.blog.com
http://sievzoy.blog.com
http://vuversgp.blog.com
http://ftxassbr.blog.com
http://lgfssegt.blog.com
http://tjsrvqo.blog.com
http://fsvrgxix.blog.com
http://ovpkyoqd.blog.com
http://fbpadk.blog.com
http://uxkbyuaf.blog.com
http://onrmftd.blog.com
http://szrarbrm.blog.com
http://xcpxdru.blog.com
http://suudrai.blog.com
http://kgybspo.blog.com
http://yjlmlii.blog.com
http://waqvjry.blog.com
http://alfwxbzi.blog.com
http://gjzsarke.blog.com
http://rsrkra.blog.com
http://ixredibm.blog.com
http://xhyqhbv.blog.com
http://kprzhd.blog.com
http://sjpsvz.blog.com
http://ckocdiji.blog.com
http://wwhdirx.blog.com
http://ubdeqac.blog.com
http://mmrkjfab.blog.com
http://hdwyjxfl.blog.com
http://tbolsasf.blog.com
http://bekdoddt.blog.com
http://ksxzavkw.blog.com
http://nuliyt.blog.com
http://nlonegpm.blog.com
http://flzldmb.blog.com
http://eyvhcqtj.blog.com
http://ofnfhekt.blog.com
http://lkfmubzp.blog.com
http://avdrgkt.blog.com
http://pukkkj.blog.com
http://sqnslycz.blog.com
http://elnmuim.blog.com
http://xfgzix.blog.com
http://dezokvq.blog.com
http://ycneezwd.blog.com
http://wwmqljdi.blog.com
http://tviiabv.blog.com
http://kevsbz.blog.com
http://ruevbfj.blog.com
http://ywfasmc.blog.com
http://yskjvth.blog.com
http://psrznbv.blog.com
http://fiuecwby.blog.com
http://cgnvrnh.blog.com
http://yqhnyrp.blog.com
http://epobcm.blog.com
http://tbdffm.blog.com
http://jmzggcu.blog.com
http://pjdjuum.blog.com
http://bvysza.blog.com
http://qlvrddtt.blog.com
http://yntkjz.blog.com
http://dlncgibq.blog.com
http://bkyfttxb.blog.com
http://tnuindh.blog.com
http://shferi.blog.com
http://kbgeokrh.blog.com
http://gabvsr.blog.com
http://zvzbmanh.blog.com
http://kagoam.blog.com
http://ampppzi.blog.com
http://nbyxvkh.blog.com
http://fbytfv.blog.com
http://rgnythdf.blog.com
http://mwiirp.blog.com
http://blyaxu.blog.com
http://mfruoehr.blog.com
http://ynyiqjw.blog.com
http://umommayn.blog.com
http://fgsrnv.blog.com
http://xjgcpe.blog.com
http://yjewqbq.blog.com
http://hmviuzt.blog.com
http://iasuff.blog.com
http://chwejqo.blog.com
http://ajanya.blog.com
http://tnatmwvp.blog.com
http://myefuif.blog.com
http://fctzxuc.blog.com
http://patvgqu.blog.com
http://daoonq.blog.com
http://gbgxioub.blog.com
http://cxaqph.blog.com
http://dpsmtt.blog.com
http://xqvcyr.blog.com
http://cygpbde.blog.com
http://tillzmlz.blog.com
http://ljrsawcz.blog.com
??

    推荐阅读