重构代码2
还有另外一段代码需要重构,原代码:
public string file;//显示生成完成的swf文件
protected void Button1_Click(object sender, EventArgs e)
{
string UploadFilePath = Server.MapPath(this.HiddenField1.Value);//保存上传的PDF或者其他可以打印的文件(DOC,DOCX等) /UploadFile/系统分析师通过的经验.doc
string NewUploadFilePath = string.Empty;//转换WPS文件路径
string ext = Path.GetExtension(UploadFilePath);
if ((".wps,.et,.pps,.dps,.pps").Contains(ext))
{
switch (ext)
{
case ".wps"://wps文件
NewUploadFilePath = Path.ChangeExtension(UploadFilePath, ".doc");
File.Move(UploadFilePath, NewUploadFilePath);
break;
case ".et"://wps的表格文件
NewUploadFilePath = Path.ChangeExtension(UploadFilePath, ".xls");
File.Move(UploadFilePath, NewUploadFilePath);
break;
case ".pps":
case ".dps":
NewUploadFilePath = Path.ChangeExtension(UploadFilePath, ".ppt");
File.Move(UploadFilePath, NewUploadFilePath);
break;
}
try
{
if (UploadFilePath != null)
{
string SwfFile = strType(UploadFilePath);//得到文件类型
if (SwfFile != null)
{
string file = NewUploadFilePath.Replace(SwfFile, ".swf");
if (!File.Exists(file))
{
bool isconvert = ConvertPdfToSwf(NewUploadFilePath, file.Replace("UploadFile", "SwfFolder"));//执行转换
if (isconvert == true)
{
file = Path.GetFileName(file);
string FlashView = "http://199.99.99.111:8011/FlashPrinter/Interface/FlashView.aspx";
Response.Write(" <script> window.location.href= '" + FlashView + "?dFile=" + HttpUtility.UrlEncode(file) + "'; </script> ");
}
}
}
}
}
catch (Exception)
{
throw;
}
}
else
{
try
{
if (UploadFilePath != null)
{
string SwfFile = strType(UploadFilePath);//转换后的文件后缀名
if (SwfFile != null)
{
string file = UploadFilePath.Replace(SwfFile, ".swf");
if (!File.Exists(file))
{
bool isconvert = ConvertPdfToSwf(UploadFilePath, file.Replace("UploadFile", "SwfFolder"));//执行转换
if (isconvert == true)
{
file = Path.GetFileName(file);
string FlashView = "http://199.99.99.111:8011/FlashPrinter/Interface/FlashView.aspx";
Response.Write(" <script> window.location.href= '" + FlashView + "?dFile=" + HttpUtility.UrlEncode(file) + "'; </script> ");
}
}
}
}
}
catch (Exception)
{
throw;
}
}
}
Insus.NET重构之后,主方法变为:
public string file;//显示生成完成的swf文件
protected void Button1_Click(object sender, EventArgs e)
{
string UploadFilePath = Server.MapPath(this.HiddenField1.Value);//保存上传的PDF或者其他可以打印的文件(DOC,DOCX等) /UploadFile/系统分析师通过的经验.doc
string ext = Path.GetExtension(UploadFilePath);
if (ExtensionType().ContainsKey(ext))
{
MoveFile(ext, UploadFilePath);
}
else
{
ConvertFile(UploadFilePath);
}
}
扩展类型:
View Code private Dictionary<string, string> ExtensionType()
{
Dictionary<string, string> ex_type = new Dictionary<string, string>();
ex_type.Add(".wps", ".doc");
ex_type.Add(".et", ".xls");
ex_type.Add(".pps", ".ppt");
ex_type.Add(".dps", ".ppt");
return ex_type;
}
MoveFile()方法:
View Code private void MoveFile(string ext, string uploadFilePath)
{
string NewUploadFilePath = string.Empty;//转换WPS文件路径
if (ExtensionType().ContainsKey(ext))
{
NewUploadFilePath = Path.ChangeExtension(uploadFilePath, ExtensionType()[ext].ToString());
File.Move(uploadFilePath, NewUploadFilePath);
}
ConvertFile(NewUploadFilePath);
}
ConvertFile()方法:
View Code private void ConvertFile(string uploadFilepath)
{
if (uploadFilepath == null) return;
if (string.IsNullOrEmpty(strType(uploadFilepath))) return;
string SwfFile = strType(uploadFilepath);
string file = uploadFilepath.Replace(SwfFile, ".swf");
if (!File.Exists(file)) return;
try
{
bool isconvert = ConvertPdfToSwf(uploadFilepath, file.Replace("UploadFile", "SwfFolder"));
if (isconvert)
{
file = Path.GetFileName(file);
string FlashView = "http://199.99.99.111:8011/FlashPrinter/Interface/FlashView.aspx";
Response.Write(" <script> window.location.href= '" + FlashView + "?dFile=" + HttpUtility.UrlEncode(file) + "'; </script> ");
}
}
catch (Exception)
{
throw;
}
}
共同学习,写下你的评论
评论加载中...
作者其他优质文章