/// <summary> /// 解析結果ファイルのファイル名を作成します。 /// </summary> /// <param name="httpContext">HTTPコンテキスト</param> /// <param name="format">ファイル形式</param> /// <returns>ファイル名</returns> private string CreateResultFileName(HttpContextBase httpContext, SupportedExcelFormat format = SupportedExcelFormat.Xlsx) { var date = DateTime.Now.ToString("yyyyMMddHHmmss"); var screenId = httpContext.GetScreenId(); return(Path.Combine($"{screenId}_{date}{format.GetExtension()}")); }
/// <summary> /// 解析結果ファイルのファイル情報を作成します。 /// </summary> /// <param name="httpContext">HTTPコンテキスト</param> /// <param name="format">ファイル形式</param> /// <returns>ファイル情報</returns> public FileInfo CreateResultFileInfo(HttpContextBase httpContext, SupportedExcelFormat format = SupportedExcelFormat.Xlsx) { var resultDir = GetResultDir(httpContext); var fileName = CreateResultFileName(httpContext, format); return(new FileInfo(Path.Combine(resultDir, fileName))); }
/// <summary> /// 一時ファイルのファイル情報を作成します。 /// </summary> /// <param name="httpContext">HTTPコンテキスト</param> /// <param name="format">ファイル形式</param> /// <returns>ファイル情報</returns> public FileInfo CreateTemporaryFileInfo(HttpContextBase httpContext, SupportedExcelFormat format = SupportedExcelFormat.Xlsx) { var temporaryDir = GetTemporaryDir(httpContext); var fileName = CreateTemporaryFileName(httpContext, format); return(new FileInfo(Path.Combine(temporaryDir, fileName))); }
/// <summary> /// Excelファイル形式の拡張子を取得します。 /// </summary> /// <param name="format">Excelファイル形式</param> /// <returns>ファイル拡張子</returns> public static string GetExtension(this SupportedExcelFormat format) { switch (format) { case SupportedExcelFormat.Xlsx: return(".xlsx"); case SupportedExcelFormat.Xlsm: return(".xlsm"); case SupportedExcelFormat.Csv: return(".csv"); } throw new ArgumentException(); }