在线预览

---恢复内容开始---

var a = row.LocalAddress;
a = a.replace(/\\/g, "/");
imglink = imglink + '<a href="' + a + '" style="text-decoration:none;" >下载&nbsp;</a>';
imglink = imglink + '<a href="#" style="text-decoration:none;" onclick="onloadFile (\'' + a + '\')">在线预览&nbsp;</a>';

//在线预览
function onloadFile(a) {
$.post("/CityData/QualityCon/ReportOnlineList", { url: a }, function (result) {
outHtml(result);
}, "text");
}
//jquery layer 弹出窗自适应
function outHtml(html)
{
layer.open({
type: 1,
skin: 'layui-layer-rim', //加上边框
area: ['650px','750px'], //宽高
title: ['', false],
content: html
});
}

public string ReportOnlineList(string url)
{
string physicalPath = Server.MapPath(Server.UrlDecode(url));
string extension = Path.GetExtension(physicalPath);
string htmlUrl = "";
switch(extension.ToLower())
{
case ".xls": htmlUrl = ExcelHelper.PreviewExcel(physicalPath, url); break;
case ".xlsx":
htmlUrl = ExcelHelper.PreviewExcel(physicalPath,url);
break;
default:
htmlUrl = PreviewOther(physicalPath, url);
break;
}
return htmlUrl;
}

public static string PreviewExcel(string physicalPath, string url)
{
HSSFWorkbook workbook = new HSSFWorkbook();

return convertExcel2Html(physicalPath);
}

public static string convertExcel2Html(String physicalPath)
{
string fileName = Path.GetFileNameWithoutExtension(physicalPath); //文件名
HSSFWorkbook workbook = null;
FileStream fs = null;

fs = new FileStream(physicalPath, FileMode.OpenOrCreate, FileAccess.ReadWrite);

workbook = new HSSFWorkbook(fs);
ExcelToHtmlConverter excelToHtmlConverter = new ExcelToHtmlConverter();

// 设置输出参数
excelToHtmlConverter.OutputColumnHeaders = false;
excelToHtmlConverter.OutputHiddenColumns = false;
excelToHtmlConverter.OutputHiddenRows = false;
excelToHtmlConverter.OutputLeadingSpacesAsNonBreaking = false;
excelToHtmlConverter.OutputRowNumbers = false;
excelToHtmlConverter.UseDivsToSpan = false;

// 处理的Excel文件
excelToHtmlConverter.ProcessWorkbook(workbook);
if (!Directory.Exists(@"C:/REPORT"))
{
Directory.CreateDirectory(@"C:/REPORT");
}
String htmlFile = "C:/REPORT/REPORT" + fileName + ".html";
//var htmlFile = HttpContext.Current.Server.MapPath("/") + "doc\\" + fileName + ".html";
//输出的html文件 需创建对应的文件目录 这里是根目录下的doc文件夹
excelToHtmlConverter.Document.Save(htmlFile);

string htmlStr = excelToHtmlConverter.Document.InnerXml;
try
{
htmlStr = htmlStr.Replace("<h2>Sheet1</h2>", "")
.Replace("<h2>Sheet2</h2>", "")
.Replace("<h2>Sheet3</h2>", "");
}
catch { }

return htmlStr;
}

---恢复内容结束---

var a = row.LocalAddress;
a = a.replace(/\\/g, "/");
imglink = imglink + '<a href="' + a + '" style="text-decoration:none;" >下载&nbsp;</a>';
imglink = imglink + '<a href="#" style="text-decoration:none;" onclick="onloadFile (\'' + a + '\')">在线预览&nbsp;</a>';

//在线预览
function onloadFile(a) {
$.post("/CityData/QualityCon/ReportOnlineList", { url: a }, function (result) {
outHtml(result);
}, "text");
}
//jquery layer 弹出窗自适应
function outHtml(html)
{
layer.open({
type: 1,
skin: 'layui-layer-rim', //加上边框
area: ['650px','750px'], //宽高
title: ['', false],
content: html
});
}

public string ReportOnlineList(string url)
{
string physicalPath = Server.MapPath(Server.UrlDecode(url));
string extension = Path.GetExtension(physicalPath);
string htmlUrl = "";
switch(extension.ToLower())
{
case ".xls": htmlUrl = ExcelHelper.PreviewExcel(physicalPath, url); break;
case ".xlsx":
htmlUrl = ExcelHelper.PreviewExcel(physicalPath,url);
break;
default:
htmlUrl = PreviewOther(physicalPath, url);
break;
}
return htmlUrl;
}

public static string PreviewExcel(string physicalPath, string url)
{
HSSFWorkbook workbook = new HSSFWorkbook();

return convertExcel2Html(physicalPath);
}

public static string convertExcel2Html(String physicalPath)
{
string fileName = Path.GetFileNameWithoutExtension(physicalPath); //文件名
HSSFWorkbook workbook = null;
FileStream fs = null;

fs = new FileStream(physicalPath, FileMode.OpenOrCreate, FileAccess.ReadWrite);

workbook = new HSSFWorkbook(fs);
ExcelToHtmlConverter excelToHtmlConverter = new ExcelToHtmlConverter();

// 设置输出参数
excelToHtmlConverter.OutputColumnHeaders = false;
excelToHtmlConverter.OutputHiddenColumns = false;
excelToHtmlConverter.OutputHiddenRows = false;
excelToHtmlConverter.OutputLeadingSpacesAsNonBreaking = false;
excelToHtmlConverter.OutputRowNumbers = false;
excelToHtmlConverter.UseDivsToSpan = false;

// 处理的Excel文件
excelToHtmlConverter.ProcessWorkbook(workbook);
if (!Directory.Exists(@"C:/REPORT"))
{
Directory.CreateDirectory(@"C:/REPORT");
}
String htmlFile = "C:/REPORT/REPORT" + fileName + ".html";
//var htmlFile = HttpContext.Current.Server.MapPath("/") + "doc\\" + fileName + ".html";
//输出的html文件 需创建对应的文件目录 这里是根目录下的doc文件夹
excelToHtmlConverter.Document.Save(htmlFile);

string htmlStr = excelToHtmlConverter.Document.InnerXml;
try
{
htmlStr = htmlStr.Replace("<h2>Sheet1</h2>", "")
.Replace("<h2>Sheet2</h2>", "")
.Replace("<h2>Sheet3</h2>", "");
}
catch { }

return htmlStr;
}

posted @ 2017-06-12 12:31  隔空相望  阅读(376)  评论(0编辑  收藏  举报